1 2001-09-05 joe c <marcus@marcuscom.com>
2 * libatalk/cnid/cnid_open.c: comment out DB_JOINENV as this is not
3 supported in db3 3.1.17
5 * libatalk/cnid/cnid_add.c: fix my comments to properly explain the use
8 2001-09-04 jeff b <jeff@univrel.pr.uconn.edu>
10 * etc/afpd/filedir.h: define veto_file() prototype (Edmund Lam)
12 * etc/uams/uams_dhx_pam.c: added quick Sun hack to seed openssl,
13 but it *really* needs something more elegant (#458433)
15 2001-09-04 jeff b <jeff@univrel.pr.uconn.edu>
17 * libatalk/cnid/cnid_add.c, libatalk/cnid/cnid_open.c: fixed
18 duplicate DID's being generated and FreeBSD db3 fix (Joe Clarke)
20 * doc/README.veto, etc/afpd/directory.c, etc/afpd/enumerate.c,
21 etc/afpd/file.c, etc/afpd/filedir.c, etc/afpd/volume.c,
22 etc/afpd/volume.h: adds Samba-style "veto file" support
25 * configure.in: properly checks for db3 headers (Joe Clarke)
27 2001-08-31 jeff b <jeff@univrel.pr.uconn.edu>
29 * libatalk/cnid/cnid_*.c: compilation fixes for those who don't
30 want to compile with CNID support (Edmund Lam)
32 2001-08-28 Lance Levsen <l.levsen@printwest.com>
34 * config/Makefile.am: Added a variable substitution from
35 configure.in to stop overwriting the config files.
37 * configure.in: Added --enable-overwrite flag that enables the
38 overwriting of configure files. Default is no overwrite, but does
39 check for missing files.
41 2001-08-27 jeff b <jeff@univrel.pr.uconn.edu>
45 2001-08-21 jeff b <jeff@univrel.pr.uconn.edu>
47 * configure.in: now does rudimentary check for DB3 library
48 if CNID DB option (--enable-cnid-db) is given, with
49 option to specify path to DB3 (Jeff)
51 2001-08-16 Uwe Hees <uwe.hees@rz-online.de>
53 * libatalk/cnid: replaced EAGAIN in db result checking with
54 DB_LOCK_DEADLOCK as appropriate for db-3.
55 * fixed a potential transaction problem in cnidd_add.
57 2001-08-14 Sam Noble <ns@shadow.org>
59 * etc/afpd/directory.c: in afp_mapname and afp_mapid
60 convert uid/gid to/from network byte order before actually
61 using. This should hopefully fix a long-standing bug in
62 the admin functionality.
64 2001-08-14 jeff b <jeff@univrel.pr.uconn.edu>
66 * acconfig.h, configure.in, etc/afpd/directory.c,
67 etc/afpd/enumerate.c, etc/afpd/file.c, etc/afpd/file.h,
68 etc/afpd/filedir.c, etc/afpd/fork.c, etc/afpd/volume.c,
69 etc/afpd/volume.h, libatalk/Makefile.am,
70 libatalk/cnid/cnid_add.c, libatalk/cnid/cnid_close.c,
71 libatalk/cnid/cnid_delete.c, libatalk/cnid/cnid_lookup.c,
72 libatalk/cnid/cnid_nextid.c, libatalk/cnid/cnid_open.c,
73 libatalk/cnid/cnid_private.h, libatalk/cnid/cnid_update.c:
74 DID database and reincluding libatalk/cnid back into
75 compiled tree (Uwe Hees)
77 * libatalk/cnid/.cvsignore: updated .cvsignore list for
80 2001-08-09 Sam Noble <ns@shadow.org>
82 * configure.in, acconfig.h: Merged a patch from meeroh@mit.edu
83 to fix the kerberos uam build process.
85 2001-08-08 jeff b <jeff@univrel.pr.uconn.edu>
87 * etc/papd/session.c: prevents papd client from aborting
88 during the submission of a print job, therefore preventing
89 the job from hanging on the Mac (Michael Boers)
91 2001-07-10 Lance Levsen <lance@iworks.pwgroup.ca>
93 * man/man8/papd.8.tmpl: Fixed ftp URI for Adobe's PPD files.
95 2001-06-30 andy m <morgan@orst.edu>
97 * etc/papd/ppd.c: "unquote" ppd values by removing leading
98 and trailing quote character. This should fix bug #426141.
100 2001-06-27 jeff b <jeff@univrel.pr.uconn.edu>
102 * many, many, files: more malformed ifdef correction, nicer
103 comments, etc, etc, etc (Jeff)
105 * etc/afpd/directory.c, etc/afpd/uid.c, etc/afpd/uid.h: fixes
106 for force-uidgid to compile properly. haven't tested it, but
107 no more compile errors. (Jeff)
109 2001-06-27 uwe hees <hees@viva.de>
111 * etc/uams/uams_guest.c: fixed a typo.
113 2001-06-26 andy m <morgan@orst.edu>
115 * etc/papd/file.c: modified markline() to return 1 instead
116 of *linelength for successful completion. This should fix
117 the remaining binary printing problems in papd. Thanks go
118 out to Dave Arnold <darn0ld@home.com> for getting me thinking
119 about the markline function.
121 2001-06-25 jeff b <jeff@univrel.pr.uconn.edu>
123 * etc/afpd/auth.c, etc/afpd/main.c, etc/afpd/uam.c,
124 etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c,
125 include/atalk/uam.h: TRU64 authentication patch to allow
126 any security scheme to be used on the TRU64 side (Burkhard
129 * etc/afpd/uam.c, etc/papd/uam.c: fixed DISABLE_SHELLCHECK
130 support in both afpd and papd (Jason Keltz <jas@cs.yorku.ca>)
132 * etc/*/*.{c,h}: corrected malformed defines, nicer comments,
135 2001-06-20 jeff b <jeff@univrel.pr.uconn.edu>
137 * configure.in: check for linux/quota.h before enabling
138 QUOTACTL_WRAPPER (Joe Clarke)
140 * acconfig.h, configure.in, include/atalk/util.h,
141 libatalk/util/module.c: removed NO_DLFCN_H in favor of
142 ifndef HAVE_DLFCN_H (Jeff)
144 * configure.in, etc/afpd/*.{c,h}, include/atalk/util.h:
145 major autoconf fixes for afpd, nicer commenting, etc (Jeff)
147 2001-06-19 jeff b <jeff@univrel.pr.uconn.edu>
149 * etc/afpd/file.c, etc/afpd/parse_mtab.c, etc/afpd/parse_mtab.h,
150 etc/atalkd/route.h, etc/atalkd/rtmp.c, etc/papd/headers.c,
151 etc/papd/magics.c, libatalk/asp/asp_tickle.c: patch for
152 fixed DID calculation in etc/afpd/file.c, FreeBSD errors and
153 other miscellany (Joe Clarke)
155 * minor patches and fixes to the aforementioned files, warning
156 fixes with GCC, etc (Jeff)
158 2001-06-18 jeff b <jeff@univrel.pr.uconn.edu>
160 * configure.in, etc/uams/Makefile.am,
161 etc/uams/uams_krb4/Makefile.am: patch #433952 from Sebastian
162 Rittau to move UAM authentication to use libtool
164 * configure.in, bin/afppasswd/Makefile.am, config/Makefile.am,
165 contrib/shell_utils/Makefile.am, distrib/initscripts/Makefile.am,
166 etc/afpd/Makefile.am, etc/afpd/nls/Makefile.am,
167 etc/atalkd/Makefile.am, etc/papd/Makefile.am,
168 man/man5/Makefile.am, man/man8/Makefile.am: patch #433906
169 to move to pkgconfdir for package config files (Sebastian Rittau)
171 * configure.in: fixed error that caused --with-did not to function
174 2001-06-13 Sam Noble <ns@shadow.org>
176 * etc/papd/{printcap,ppd,lp,file,comment}.h:
177 added #include <sys/cdefs.h> to these headers so that __P gets
178 properly defined on platforms like TRU64
180 2001-06-11 jeff b <jeff@univrel.pr.uconn.edu>
182 * configure.in, include/atalk/adouble.h, libatalk/compat/flock.c:
183 patch #431859 to avoid ucbinclude on Solaris, with flock support,
184 thanks to Russ Allbery (rra@users.sourceforge.net)
186 * acconfig.h, configure.in, libatalk/util/server_child.c,
187 libatalk/util/server_lock.c, sys/netatalk/endian.h: patch #432052
188 for portability to IRIX, HP-UX, and AIX (Russ Allbery)
190 * etc/afpd/nls/makecode.c: patch #432137 to add codepage mapping
191 support for (C), (TM) and other characters to avoid losing them,
192 submitted by Andre Schild (aschild@users.sourceforge.net)
194 * configure.in: set sysconfdir as /etc/netatalk by default, and
195 uams path now pulls from sysconfdir instead of config_dir
198 2001-06-07 jeff b <jeff@univrel.pr.uconn.edu>
200 * configure.in, bin/afppasswd/Makefile.am,
201 contrib/shell_utils/Makefile.am, distrib/initscripts/Makefile.am,
202 etc/afpd/Makefile.am, etc/afpd/nls/Makefile.am,
203 etc/atalkd/Makefile.am, etc/papd/Makefile.am,
204 man/man5/Makefile, man/man8/Makefile.am: patch #422872 from
205 Sebastian Rittau to move from CONFIG_DIR to sysconfdir
207 * etc/psf/Makefile.am, sys/solaris/Makefile: additional removal
208 of CONFIG_DIR in favor of sysconfdir, plus patch #422860 from
209 Sebastian Rittau to correct other problems
211 * config/Makefile.am, config/netatalk.pamd: patch #422856 from
212 Sebastian Rittau, moving to pam_unix.so and being more proper
214 * etc/afpd/Makefile.am, etc/afpd/main.c: added support for
215 ${sysconfdir}/afpd.mtab to be read into memory, so that mtab
216 DID support actually works...
218 2001-06-06 jeff b <jeff@univrel.pr.uconn.edu>
220 * etc/afpd/filedir.c, etc/afpd/unix.c: fixed dropkludge code
221 so that it properly compiles again, along with minor warning
224 2001-06-05 Dan L. (pooba53)
226 * Modified configure.in so references made to $ac_prefix_default
227 listed at the beginning are correct. The previous references were
228 being made to $ac_default_prefix.
230 2001-06-04 jeff b <jeff@univrel.pr.uconn.edu>
232 * doc/README.TRU64: details about tru64 installations, from
233 Edmund Lam <epl@unimelb.edu.au>
235 * etc/afpd/fork.c: implemented Sebastian Rittau's change to
236 avoid overwriting AppleDouble headers (finally)
238 * configure.in, etc/afpd/enumerate.c, etc/afpd/parse_mtab.c:
239 added initial support for mtab DID format. removed "lastdid"
240 configure option in favor of --with-did={last,mtab}
242 2001-06-01 jeff b <jeff@univrel.pr.uconn.edu>
243 * etc/afpd/quota.c: fix for Linux compile by Sam Noble
246 2001-05-25 jeff b <jeff@univrel.pr.uconn.edu>
247 * etc/uams/uams_passwd.c: another Tru64 fix from Burkhard
248 Schmidt <bs@cpfs.mpg.de>
250 * configure.in, contrib/shell_utils/Makefile.am,
251 contrib/shell_utils/afpd-mtab.pl, doc/Makefile.am,
252 doc/COPYRIGHT.mtab, doc/README.mtab, doc/README.mtab.distribution,
253 etc/afpd/.cvsignore, etc/afpd/Makefile.am, etc/afpd/parse_mtab.c,
254 etc/afpd/parse_mtab.h, test_parse_mtab.c: experimental mtab
255 code from Bob Rogers to generate more persistant DIDs
257 2001-05-22 jeff b <jeff@univrel.pr.uconn.edu>
258 * configure.in, etc/afpd/unix.h: more portability fixes, and
259 integration of Tru64 build fix from Edmund Lam <epl@unimelb.edu.au>
261 * configure.in, bin/megatron/Makefile.am,
262 distrib/initscripts/Makefile.am, etc/afpd/main.c,
263 etc/afpd/quota.c, etc/afpd/unix.h,
264 etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c: Another
265 round of Tru64 patches from Burkhard Schmidt <bs@cpfs.mpg.de>
267 2001-05-09 jeff b <jeff@univrel.pr.uconn.edu>
268 * autogen.sh: added automake --include-deps to autogen.sh to
269 promote more portable Makefiles (thanks to Christian
270 Weisgerber <naddy@mips.inka.de> from OpenBSD)
272 2001-05-08 jeff b <jeff@univrel.pr.uconn.edu>
274 * bin/megatron/Makefile.am, etc/uams/Makefile.am: small Makefile fixes
275 from Olaf Hering <olh@suse.de>
277 * etc/uams/uams_dhx_passwd.c: Tru64 fixes from Burkhard Schmidt
280 2001-05-07 jeff b <jeff@univrel.pr.uconn.edu>
282 * contrib/shell_utils/netatalkshorternamelinks.pl: added script to
285 * etc/afpd/quota.c, etc/uams/uams_passwd.c: patches from Burkhard
286 Schmidt <bs@cpfs.mpg.de> to fix typos
288 2001-05-03 jeff b <jeff@univrel.pr.uconn.edu>
290 * etc/afpd/quota.c, etc/afpd/unix.h, etc/afpd/main.c,
291 etc/uams/uams_passwd.c: Tru64 patch from Burkhard Schmidt <bs@cpfs.mpg.de>
293 * configure.in, etc/afpd/quota.c, etc/afpd/unix.h: fixes for USE_*_H
294 moving to autodetected HAVE_*_H from autoconf script
296 2001-05-01 jeff b <jeff@univrel.pr.uconn.edu>
298 * bin/aecho/aecho.c, bin/getzones/getzones.c, bin/megatron/asingle.c,
299 bin/megatron/hqx.c, bin/megatron/macbin.c, bin/megatron/megatron.c,
300 bin/megatron/nad.c, bin/megatron/updcrc.c, libatalk/atp/atp_bprint.c,
301 libatalk/util/getiface.c: warnings patch from Sebastian Rittau
302 <srittau@users.sourceforge.net> (#420300)
304 * bin/afile/*: replacement for old restrictive afile from Sebastian
305 Rittau <srittau@users.sourceforge.net> (#420302)
307 * distrib/initscripts/rc.atalk.redhat.tmpl: daemon-specific start and
308 stop messages to the redhat initscript. nbpregister and unregister
309 messages are also displayed. This patch also permits spaces in zone
310 and machine names to be used in the variables. From Ryan Cleary
311 <tryanc@users.sourceforge.net> (#418094)
313 * bin/megatron/Makefile.am: patch to properly create links for
314 megatron, from Sebastian Rittau <srittau@users.sourceforge.net>
317 2001-04-25 morgan a <morgan@orst.edu>
319 * etc/afpd/unix.c: in setdirowner(), changed some of the syslog
320 statements from LOG_ERR to LOG_DEBUG. Some common "soft errors"
321 were being logged and scaring users. :)
323 2001-04-24 jeff b <jeff@univrel.pr.uconn.edu>
325 * configure.in: fixed problem with tcp_wrappers support; it needed to
328 2001-04-20 jeff b <jeff@univrel.pr.uconn.edu>
330 * configure.in, etc/afpd/Makefile.am, etc/papd/Makefile.am: added
331 AFPD_LIBS and PAPD_LIBS to cope with libraries that don't need to
332 be used for everything
334 2001-04-16 jeff b <jeff@univrel.pr.uconn.edu>
336 * etc/afpd/directory.c, etc/afpd/messages.c, etc/uams/uams_dhx_pam.c:
337 merged patch from Heath Kehoe <hkehoe@users.sourceforge.net> #416371,
338 fixing an OSX issue, byteorder problems with uid/gid in directory.c,
339 and fixing the syslog()'s in uams_dhx_pam.c to not produce useless
342 2001-04-12 jeff b <jeff@univrel.pr.uconn.edu>
346 2001-04-10 jeff b <jeff@univrel.pr.uconn.edu>
348 * configure.in, acconfig.h, etc/afpd/uam.c: patch submitted by Jason
349 Kelitz (jkeltz) to allow disabling of shell checking
351 * configure.in, contrib/Makefile.am: made timelord compilation
352 optional, disabled by default
354 2001-04-03 jeff b <jeff@univrel.pr.uconn.edu>
356 * etc/afpd/file.c: merged patch from Soren Spies <sspies@apple.com>
357 at Apple, fixing server disconnect problem upon afp_createid() call
359 2001-04-02 jeff b <jeff@univrel.pr.uconn.edu>
361 * contrib/shell_utils/Makefile.am, contrib/shell_utils/cleanappledouble.pl:
362 added cleanappledouble.pl script from Heath Kehoe <hakehoe@avalon.net>
364 2001-03-26 jeff b <jeff@univrel.pr.uconn.edu>
366 * etc/afpd/quota.c: fix compile dbtob problem on Linux from Sam
367 Noble <ns@shadow.org>
369 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am:
370 moved -shared into LDSHAREDFLAGS to fix Solaris build problems
371 from Bob Rogers <rogers-netatalk-devel@rgrjr.dyndns.org> and
372 Akop Pogosian <akopps@csua.berkeley.edu>
374 2001-03-22 Lance Levsen <lance.l@dontspam.home.com>
376 * etc/uams/Makefile.am: Added $LDFLAGS to fix broken compile due
377 to inability to find libcrypto. libcrypto is defined in LDFLAGS as
378 "-L$ssldir/lib" in configure.
380 2001-03-22 12:57 EST jeff b <jeff@univrel.pr.uconn.edu>
382 * configure.in: patch for OpenBSD compile reported by Jean-Phillipe
383 Rey <jprey@ads.ecp.fr>
385 2001-03-21 09:35 EST jeff b <jeff@univrel.pr.uconn.edu>
387 * etc/afpd/ofork.c, include/atalk/adouble.h, libatalk/adouble/ad_open.c:
388 patch from Jonathan Paisley (jonp@chem.gla.ac.uk)
390 2001-03-14 13:30 EST jeff b <jeff@univrel.pr.uconn.edu>
392 * configure.in: patch from Yoshinobu Ishizaki to fix problems with
393 Linux 2.0.x builds (Patch #408256)
395 * etc/afpd/file.c: used patch at http://www.avalon.net/~hakehoe/
396 to fix deleting/emptying trash problems (Patch #408218)
398 2001-03-14 11:00 EST jeff b <jeff@univrel.pr.uconn.edu>
400 * libatalk/adouble/ad_open.c: fixed O_RDWR kludge in ad_mode call
401 which was causing file creation problems
403 2001-03-09 09:42 EST jeff b <jeff@univrel.pr.uconn.edu>
405 * sys/solaris/Makefile: fixed problems noted by Akop Pogosian in Solaris
406 build, most notably paths, and reference to lp2pap.sh in the wrong
409 2001-03-07 15:30 EST jeff b <jeff@univrel.pr.uconn.edu>
413 * distrib/rpm/netatalk-redhat.spec, distrib/rpm/netatalk-mandrake.spec:
414 updated for 1.5pre5 release
416 2001-03-07 10:34 EST jeff b <jeff@univrel.pr.uconn.edu>
418 * etc/afpd/volume.c: changed VOLOPT_MAX to be 9 if FORCE_UIDGID is not
419 defined (thanks to Axel Bringenberg <A.Bringenberg@srz-berlin.de>)
421 2001-03-07 10:14 EST jeff b <jeff@univrel.pr.uconn.edu>
423 * ChangeLog: started using timestamps in ChangeLog
425 * etc/uams/uams_krb4/Makefile.am: fixed reference to send_to_kdc.c typo
426 (thanks to Sebastian Rittau)
428 2001-03-06 13:40 Lance Levsen <l.levsen@printwest.com>
430 * FAQ, README, README.ASUN, INSTALL.txt: Moved FAQ, AND READMEs to
431 docs/, where they should be.
433 * INSTALL/INSTALL.txt: Added ./INSTALL/INSTALL.txt
435 * INSTALL/FAQ, README, README.ASUN: Moved README.ASUN, README,
438 2001-03-06 11:47 Andrew Morgan <morgan@orst.edu>
440 * TODO: A few updates to papd entry.
442 * README.MORGAN: Removed README.MORGAN because that information in
443 now in papd's man page.
445 * man/man8/papd.8.tmpl: Updated papd man page to match current
446 code. Added descriptions of authenticated printing and other new
449 2001-02-28 15:43 Marc J. Millar <itlm019@mailbox.ucdavis.edu>
451 * libatalk/adouble/ad_open.c: AppleDouble directory creation
454 2001-02-28 jeff b <jeff@univrel.pr.uconn.edu>
456 * etc/afpd/directory.c, etc/afpd/file.c, etc/afpd/filedir.c,
457 etc/afpd/unix.c, etc/afpd/unix.h, etc/afpd/volume.h,
458 etc/afpd/volume.c, man/man5/AppleVolumes.default.5.tmpl: added
459 "dropbox" to available option if DROPKLUDGE is used during
462 2001-02-27 jeff b <jeff@univrel.pr.uconn.edu>
464 * README: updated 1.5+ install instructions to include list of
465 required and recommended packages
467 * etc/uams/uams_*.c: cleanups, addition of CVS Id tag to C source
469 * configure.in, acconfig.h: change USE_AFS to AFS to be the same as
470 all of the defines in the codebase
472 * etc/uams/uams_dhx_pam.c: fixed DHX login using this module (last
473 patch made with syslog()'s didn't include any brackets)
476 * distrib/initscripts/.cvsignore: removed pulling of atalk
478 * configure.in, etc/uams/Makefile.am: conditional compilation support
479 for PGP UAM module using --enable-pgp-uam
481 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am,
482 etc/uams/uams_krb4/.cvsignore, etc/uams/uams_krb4/*.c: modifications
483 for future Kerberos module reintegration
485 2001-02-26 jeff b <jeff@univrel.pr.uconn.edu>
487 * configure.in: added /usr/local/ssl to list of SSL paths to check, to
488 help kludge compilation on Mac OS X from Marcel <lammerse@xs4all.nl>
490 * distrib/initscripts/rc.atalk.redhat.tmpl: adjusted to echo warning
491 instead of dumping out if appletalk module not present, from
492 Steven Karen <karelsf@users.sourceforge.net> (Bug #404087)
494 * configure.in, contrib/timelord/timelord.c: applied patch from Wes
495 Hardaker <hardaker@users.sourceforge.net> (Patch #402245), with
496 suitable configure.in fixes
498 2001-02-23 jeff b <jeff@univrel.pr.uconn.edu>
500 * etc/afpd/desktop.c, etc/afpd/codepage.c, etc/afpd/nls/makecode.c:
501 patch from Axel Barnitzek <barney@users.sourceforge.net> to fix
502 broken codepage support.
504 * ChangeLog: started updaing ChangeLog with important patch/fix
505 information, as it is *never* up to date.
507 * configure.in, acconfig.h: implemented AFS configuration option
508 patch from Wes Hardaker <hardaker@users.sourceforge.net>
510 * VERSION: bumped up version to 1.5pre5, since 1.5pre4 was kind of
513 * autogen.sh: make libtoolize copy instead of linking files to
514 avoid problems, thanks to Wes Hardaker <hardaker@users.sourceforge.net>
516 2001-02-20 jeff b <jeff@univrel.pr.uconn.edu>
519 - Debian packaging in tree
520 - Numerous Makefile/build fixes
521 - .cvsignore implemented
522 - Solaris build fixes
524 2001-01-02 jeff b <jeff@univrel.pr.uconn.edu>
526 * etc/afpd/uid.c, etc/afpd/uid.h, ...: added support for forcing
527 uid/gid per volume for afpd
529 2000-09-22 Roland Schulz <rdschulz@abarrach.franken.de>
531 * etc/afpd/volume.c (setvoltime): fix for multiple clients
532 writing to same volume.
534 2000-02-28 a sun <asun@asun.cobalt.com>
536 * etc/afpd/directory.h (CNID_INODE): xor the inode a little
539 2000-02-23 a sun <asun@asun.cobalt.com>
541 * etc/afpd/volume.c (creatvol): / is a special case. you can't
542 share it unless you give it a name.
544 2000-02-21 a sun <asun@asun.cobalt.com>
546 * distrib/initscripts/rc.atalk.redhat/cobalt: added changes to
547 make redhat 6.x happier.
549 2000-02-17 a sun <asun@asun.cobalt.com>
551 * libatalk/adouble/ad_lock.c (adf_unlock): off-by-one error with
552 lock removal. this + the log right below fix ragtime.
554 2000-02-16 a sun <asun@asun.cobalt.com>
556 * etc/afpd/fork.c (afp_bytelock): only error on bytelocks
557 positioned at 0x7FFFFFFF if there's no resource fork.
559 2000-02-14 a sun <asun@asun.cobalt.com>
561 * libatalk/adouble/ad_lock.c: re-wrote locking bits so that
562 allocations happen in blocks. added missing case that omnis
565 2000-02-07 a sun <asun@asun.cobalt.com>
567 * bin/nbp/Makefile (install): make nbprgstr/nbpunrgstr with 700
570 * include/atalk/adouble.h (sendfile): change to deal with
573 2000-01-25 a sun <asun@asun.cobalt.com>
575 * etc/afpd/ofork.c: keep track of oforks being used for each
576 directory so that we can update them if the directory tree gets
579 * etc/afpd/directory.c (deletecurdir): remove dangling symlinks on
582 2000-01-24 a sun <asun@asun.cobalt.com>
584 * etc/afpd/directory.h (CNID): moved cnid assignment here along
587 * etc/afpd/directory.c: changed directory search to use red-black
588 trees to improve balance. parent-child tree changed to circular
589 doubly-linked list to speed up insert/remove times. there's still
590 one obstacle to actually freeing red-black tree entries. i need to
591 add an ofork list to struct dir to minimize search times.
593 2000-01-18 a sun <asun@asun.cobalt.com>
595 * etc/afpd/directory.c (dirinsert): detect attempts to add
596 pre-existing entries as just symbolic links.
598 * etc/afpd/filedir.h (CNID): moved inode-cnid assignment here and
599 extended to directories.
601 2000-01-03 a sun <asun@asun.cobalt.com>
603 * etc/uams/uams_pam.c (PAM_conv): surround PAM_BINARY_PROMPT with
606 * etc/afpd/status.c (status_init): fixed a bunch of problems here
607 that manifested under solaris 7.
609 * etc/afpd/main.c (main): use FD_SETSIZE instead of FD_SETSIZE +
613 1999-12-27 a sun <asun@asun.cobalt.com>
615 * libatalk/util/getiface.c: moved interface detection code to here
616 so that i can use if_nameindex() or getifconf() depending upon
619 1999-12-13 a sun <asun@asun.cobalt.com>
621 * libatalk/dsi/dsi_tcp.c (dsi_tcp_init): added if_nameindex()
622 based interface code.
624 * etc/afpd/afp_options.c (afp_options_parseline): added
625 -server_quantum as an option. using hex would be a good idea.
627 * libatalk/dsi/dsi_opensess.c (dsi_opensession): added bits to set
628 the server quantum. by default, the server quantum is limited to
629 1MB due to a bug in the os 9 appleshare client.
631 * distrib/initscripts/rc.atalk.{cobalt,redhat}: surround nbp stuff
634 * etc/uams/uams_dhx_pam.c (pam_changepw): added dhx-based password
637 1999-12-06 a sun <asun@asun.cobalt.com>
639 * etc/afpd/directory.c (setdirparams): don't error if we can't set
640 the desktop owner/permisssions.
642 1999-11-04 a sun <asun@asun.cobaltnet.com>
644 * etc/afpd/fork.c (afp_openfork): had the ordering wrong on an
647 1999-11-02 a sun <asun@asun.cobaltnet.com>
649 * etc/afpd/afp_dsi.c (afp_over_dsi): flush data for unknown dsi
652 1999-10-28 a sun <asun@asun.cobaltnet.com>
654 * etc/uams/*.c: return FPError_PARAM if the user is unknown.
656 1999-10-27 a sun <asun@asun.cobaltnet.com>
658 * etc/afpd/fork.c (afp_read): if sendfile isn't supported, use the
661 1999-10-25 a sun <asun@asun.cobaltnet.com>
663 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): fix nbp unregisters.
665 1999-10-21 a sun <asun@asun.cobaltnet.com>
667 * etc/afpd/Makefile (install): moved install of afpd earlier per
668 suggestion by steven michaud.
670 1999-10-05 a sun <asun@asun.cobaltnet.com>
672 * etc/uams/uams_randnum.c (afppasswd): for ~/.passwd's, turn
673 ourselves into the user so that nfs is happy.
675 1999-09-19 a sun <asun@adrian5>
677 * libatalk/netddp/netddp_open.c, nbp/*.c: only use the bcast stuff
678 if it's on an os x server machine.
680 1999-09-15 a sun <asun@adrian5>
682 * libatalk/nbp/nbp_unrgstr.c,nbp_lkup.c,nbp_rgstr.c: os x server
683 wants ATADDR_BCAST. that probably means that i need to do
684 multihoming appletalk a little differently. bleah.
686 1999-09-09 <asun@asun.cobaltnet.com>
688 * etc/afpd/directory.c (getdirparams), libatalk/adouble/ad_open.c
689 (ad_open): mondo lameness. i forgot that directory lookups can be
690 done with "." as the directory name. that was auto-hiding
691 them. bleah. i also figured out which bit was the invisible bit
692 for finderinfo information.
694 1999-09-06 Adrian Sun <asun@glazed.cobaltnet.com>
696 * etc/afpd/desktop.c (mtoupath): fixed a bug in codepage support
697 that accidentally crept in.
699 1999-08-31 Adrian Sun <asun@glazed.cobaltnet.com>
701 * etc/afpd/quota.c (getfsquota): use group quotas in quota
702 calculations if the user belongs to a single group. just use the
703 user quotas if the user belongs to multiple groups.
705 * etc/afpd/volume.c (getvolspace): added an options:limitsize to
706 restrict the available space to 2GB. this is for macs running
707 older versions of the operating system with newer versions of the
708 appleshare client. weird huh?
710 * etc/afpd/quota.c (uquota_getvolspace): bleah. 64-bit shifts
711 don't get promoted in the same way as arithmetic operations. added
712 some more casts to deal with that issue.
714 1999-08-24 Adrian Sun <asun@glazed.cobaltnet.com>
716 * man/man?/Makefile: don't re-build .tmp files if they already
717 exist. this gets the install phase to work correctly.
719 1999-08-13 a sun <asun@hecate.darksunrising.blah>
721 * etc/afpd/directory.c, file.c, filedir.c: illegal characters get
722 AFPERR_PARAM. also, reject names with /'s in them if the nohex
725 1999-08-12 a sun <asun@hecate.darksunrising.blah>
727 * etc/afpd/filedir.c,file.c,directory.c: changed error for
728 illegal filenames to AFPERR_EXIST.
730 1999-08-11 a sun <asun@hecate.darksunrising.blah>
732 * etc/afpd/desktop.h (validupath): if usedots is set, .Apple* and
733 .Parent files are no longer valid file names.
735 * etc/afpd/volume.c (volset): added usedots and nohex as
736 options. usedots stops :hex translation of . files while nohex
737 stops :hex translation of everything but . files. in addition,
738 . files created on the unix side are by default hidden.
740 * libatalk/adouble/ad_open.c: initialize more bits.
742 1999-08-10 a sun <asun@hecate.darksunrising.blah>
744 * distrib/initscripts/rc.atalk.redhat (WORKSTATION): use the
745 actual name for nbp registration rather than ATALK_NAME.
747 * sys/solaris/Makefile (kernel): make sure osdefs and machinedefs
748 get used when building the kernel module.
750 * sys/solaris: changed strings.h to string.h
752 1999-08-08 a sun <asun@hecate.darksunrising.blah>
754 * etc/afpd/volume.c (readvolfile): changed volume options into an
755 array of structs to ease maintenance.
757 1999-08-05 a sun <asun@hecate.darksunrising.blah>
759 * etc/afpd/status.c (status_init): change the default icon
760 depending upon whether or not it's an ASIP or an AppleTalk
763 1999-08-04 Adrian Sun <asun@glazed.cobaltnet.com>
765 * etc/atalkd/main.c (setaddr): made a failure with setaddr a
766 little more informative.
768 1999-08-03 Adrian Sun <asun@glazed.cobaltnet.com>
770 * yippee. someone figured what was happening with the installation
771 of the man pages. i got rid of a duplicate entry.
773 1999-08-02 a sun <asun@hecate.darksunrising.blah>
775 * etc/afpd/volume.c (readvolfile): added a per-file way of setting
776 default options. it keys in on a :DEFAULT: label.
778 1999-07-30 a sun <asun@hecate.darksunrising.blah>
780 * moved rc.atalk.* scripts to distrib/initscripts.
782 1999-07-27 a sun <asun@hecate.darksunrising.blah>
784 * contrib/printing: added patch from job@uchicago.edu
786 * etc/afpd/file.c: forgot to initialize struct ad in
789 * etc/afpd/nls/makecode.c: added an empty mapping.
791 * etc/psf/Makefile (install): well cp -d didn't work either. just
794 1999-07-26 a sun <asun@hecate.darksunrising.blah>
796 * sys/solaris/tpi.c (tpi_attach): changed DDI_NT_NET to DDI_PSEUDO
797 (from denny@geekworld.com).
799 * distrib/rpm/netatalk-asun.spec (Summary): incorporated new spec
800 and patch files from inoue.
802 * sys/linux/Makefile (install-sysv): fixed up a bit.
804 * etc/psf/Makefile (install): use cp -d instead of cp -a to make
807 * etc/afpd/afp_options.c (afp_options_parseline): reversed meaning
808 of -icon. now it means to use the yucky bitmap instead of the
811 * bin/afppasswd/Makefile (all): add -Iinclude/openssl for
814 1999-07-18 a sun <asun@hecate.darksunrising.blah>
816 * create links/mangle files in the compile rather than the install
817 phase so that rpm will be happier.
819 1999-07-17 a sun <asun@hecate.darksunrising.blah>
821 * etc/afpd/file.c (afp_createfile), directory (afp_createdir),
822 filedir.c (afp_rename, afp_moveandrename): don't allow the
823 creation/renaming of names with certain characters if mswindows
824 compatibility is enabled.
826 1999-07-16 a sun <asun@hecate.darksunrising.blah>
828 * rc.atalk.redhat: incorporated chkconfig from inoue.
830 1999-07-15 a sun <asun@hecate.darksunrising.blah>
832 * etc/atalkd/config.c (getifconf): wrap check against
833 IFF_MULTICAST behind an #ifdef IFF_MULTICAST.
835 * sys/netbsd/Makefile (LDSHAREDFLAGS): key in on machine type.
837 1999-07-11 a sun <asun@hecate.darksunrising.blah>
839 * contrib/ICDumpSuffixMap: added internet config perl script from
842 * contrib/printing: added contributed solaris printing scripts
843 from job@uchicago.edu.
845 1999-07-10 a sun <asun@hecate.darksunrising.blah>
847 * etc/atalkd/interface.h, rtmp.h: prototyped functions.
849 * etc/atalkd/zip.c: converted bcopy's to memcpy's.
851 * etc/atalkd/nbp.c,rtmp.c: added checks for the interface for
854 * etc/atalkd/main.c: converted bzero/bcopy to memset/memcpy.
856 1999-07-08 a sun <asun@hecate.darksunrising.blah>
858 * libatalk/nbp/nbp_rgstr.c (nbp_rgstr): return EADDRINUSE if the
859 address already exists.
861 1999-07-06 a sun <asun@hecate.darksunrising.blah>
863 * rc.atalk.redhat: changed netatalk.config to netatalk.conf
865 1999-07-05 a sun <asun@hecate.darksunrising.blah>
867 * etc/atalkd/nbp.c (nbp_packet): add interface to nbp struct. this
868 is so that we can filter by interface in the future. however, it
869 doesn't seem to work that well right now. bleah.
871 * etc/atalkd/main.c: fixed up dontroute option so that it doesn't
872 screw up atalkd.conf. also, we need to do a bootaddr if dontroute
875 * libatalk/atp,nbp,netddp; bin/aecho,nbp,getzones,pap;
876 etc/papd,afpd: accept -A <ddp address> as an option so that you
877 can specify the address to be used on a multihomed server. for
878 papd, you use the 'pa' option in papd.conf.
880 1999-07-04 a sun <asun@hecate.darksunrising.blah>
882 * etc/atalkd/config.c (parseline): initialize parseline properly
883 so that we don't get extraneous junk.
885 * etc/afpd/afp_options.c (afp_options_parseline): do
886 gethostbyaddr/gethostbyname's for -ipaddr and -fqdn.
888 * etc/atalkd/config.c (getifconf/readconf): check to see if the
889 supported device can support appletalk addresses. either continue
890 or exit depending upon whether or not it's auto-configed.
892 1999-07-03 a sun <asun@hecate.darksunrising.blah>
894 * etc/afpd/afp_options.c (afp_options_parse): -I (-[no]icon) will
895 toggle the volume icon so that it uses the apple icon instead.
897 * etc/afpd/config.c (AFPConfigInit): added more logic for the
898 -proxy option. here are the rules: -proxy will always try to
899 create a DDP server instance. by default, the proxy server will
900 still allow you to login with an appletalk connection. to prevent
901 that, just set the uamlist to an empty string.
903 1999-07-02 a sun <asun@hecate.darksunrising.blah>
905 * etc/afpd/status.c (status_netaddress): added support for fqdn
906 (not available in the appleshare client yet).
908 1999-07-01 a sun <asun@hecate.darksunrising.blah>
910 * etc/afpd/config.c (DSIConfigInit): application code for proxy
911 setup. it's the -proxy option.
913 * libatalk/dsi/dsi_init/tcp.c (dsi_init/dsi_tcp_init): added
914 support for proxy setup.
916 1999-06-30 a sun <asun@hecate.darksunrising.blah>
918 * etc/afpd/filedir.c (afp_rename): fixed up some error
919 codes. quark express should be happier.
921 * etc/afpd/uam.c (uam_afpserver_option): added
922 UAM_OPTION_HOSTNAME. use this to set PAM_RHOST. i just got a
923 report that setting that fixes pam on solaris machines.
925 1999-06-28 a sun <asun@hecate.darksunrising.blah>
927 * etc/afpd/ofork.c (of_alloc): report out of forks in syslog..
929 * etc/afpd/enumerate.c (afp_enumerate): close an opendir leak.
931 * include/atalk/{dsi,asp}.h: make cmdlen and datalen ints.
933 * etc/afpd/fork.c (afp_write): fixed up error condition.
935 1999-06-26 a sun <asun@hecate.darksunrising.blah>
937 * etc/uams/Makefile (install): changed install location of uams.
939 * sys/linux/Makefile (install-sysv): always install redhat
940 script. netatalk.config script only gets installed if it's not
943 1999-06-23 a sun <asun@hecate.darksunrising.blah>
945 * rc.atalk.redhat: merged in redhat contrib rpm rc.atalk script.
947 * etc/afpd/afp_options.c (afp_options_init): changed default
950 1999-06-22 a sun <asun@hecate.darksunrising.blah>
952 * etc/afpd/config.c (DSIConfigInit): truncate options->server to
953 just the server name here.
955 * etc/afpd/volume.c (volxlate): made $s return something
956 meaningful no matter what.
958 * libatalk/adouble/ad_sendfile.c (ad_readfile): freebsd sendfile
961 1999-06-20 a sun <asun@hecate.darksunrising.blah>
963 * etc/afpd/volume.c (volxlate): added variable substitution. if it
964 doesn't understand the variable, it just spits it back out.
966 (creatvol): display truncated volume name if it's too long.
968 * sys/{generic,solaris}/Makefile: added NO_CRYPTLIB option to deal
969 with oses that have -lcrypt but shouldn't use it.
971 1999-06-11 a sun <asun@hecate.darksunrising.blah>
973 * include/atalk/afp.h: added comments to FPErrors.
975 * etc/afpd/enumerate.c (afp_enumerate): make FPEnumerate do some
978 * include/atalk/util.h: server_lock() returns pid_t.
980 1999-06-10 a sun <asun@hecate.darksunrising.blah>
982 * README.ASUN: added location for both ssleay and openssl.
984 * etc/uams: moved install to LIBDIR/uams. "uams_*" now means "uam
985 server." in the future, there will be "uamc_*." changed the shared
986 library names to match.
988 * include/atalk/atp.h,nbp.h: forgot to include <sys/cdefs.h>
990 * etc/uams/Makefile: openssl-0.9.3c uses <openssl/*.h> so add that
993 * sys/{solaris,ultrix}/Makefile: just use -I../sys/generic instead
996 * include/atalk/uam.h, etc/uams/uam_*.c, etc/afpd/uam.c: added uam
997 type field. do type check.
999 * etc/uams/uam_*pam.c: added a couple more error codes.
1001 1999-06-08 a sun <asun@hecate.darksunrising.blah>
1003 * etc/afpd/nls/Makefile (codepage.h): make sure that a link to
1004 codepage.h gets made.
1006 * libatalk/*/Makefile: make sure that the profiled directory gets
1009 * etc/afpd/directory.c (afp_mapname): removed an extraneous line
1010 that was causing mapname to fail.
1012 1999-06-07 a sun <asun@hecate.darksunrising.blah>
1014 * etc/atalkd/main.c (main): added a note to check the syslog if
1015 atalkd can't be setup.
1017 * sys/linux/Makefile: added -DNEED_QUOTACTL_WRAPPER to the list of
1018 auto-detected #defines.
1020 1999-06-06 a sun <asun@hecate.darksunrising.blah>
1022 * etc/afpd/fork.c (afp_write): argh. i moved things around a
1023 little too much and ended up with an uninitialized eid. strangely,
1024 the compiler didn't complain. simplified bits a little as
1025 well. also, FPWrite was returning the wrong error messages. on
1026 64-bit filesystems, the offset can wraparound. so, report a disk
1027 full error if that's going to happen. egcs-19990602 gets one
1028 memcpy right and another wrong on my udb. bleah.
1030 (afp_read): fixed the error messages here as well.
1032 1999-06-05 a sun <asun@hecate.darksunrising.blah>
1034 * Makefile, sys/generic, sys/{ultrix,solaris}/Makefile: create
1035 some links on the fly if they're missing.
1037 * etc/afpd/directory.c (copydir): fixed a leaking opendir and
1038 re-arranged a little.
1040 1999-06-04 a sun <asun@hecate.darksunrising.blah>
1042 * etc/afpd: prototyped everything here and moved the FP functions
1045 * libatalk/util/bprint.c: moved all of the bprints to here.
1047 * libatalk/asp, include/atalk/asp.h: prototyped asp functions.
1049 * include/atalk/atp.h, libatalk/atp: prototyped atp functions.
1051 * libatalk/nbp, include/atalk/nbp.h: added prototypes for nbp
1054 * bin/afppasswd/Makefile (afppasswd): fixed a misspelling in the
1057 * bin/afppasswd/afppasswd.c: added -a option so that root can add
1058 new users. turned all of the options into bits. added newlines to
1061 1999-06-03 a sun <asun@hecate.darksunrising.blah>
1063 * sys/freebsd/Makefile: turn on sendfile support if running on a
1066 1999-06-02 a sun <asun@hecate.darksunrising.blah>
1068 * etc/uams/uam_dhx_pam.c: fixed memory freeing part of pam
1069 conversation function.
1071 * sys/*/Makefile: check at make time to see if -lrpcsvc and
1072 -lcrypt should be included in the appropriate places.
1074 1999-05-28 a sun <asun@hecate.darksunrising.blah>
1076 * etc/afpd/file.c (deletefile): added more error checking here as
1079 * etc/afpd/directory.c (renamedir): added a couple a few more
1082 * sys/sunos/Makefile: sunos should really work now.
1084 1999-05-27 a sun <asun@hecate.darksunrising.blah>
1086 * include/atalk/afp.h: added in a couple new error codes (one
1087 deals with password setting policy, the other with maximum logins
1090 * etc/afpd/fork.c (afp_openfork): try to re-open files on
1091 read-only volumes as read-only.
1093 1999-05-26 a sun <asun@hecate.darksunrising.blah>
1095 * sys/solaris/Makefile: fixed a few bobbles here. solaris uses
1096 uname -p. other oses seem to use uname -m for the same information.
1098 * etc/uams/uam_pam.c (pam_changepw): added check for same
1101 * etc/uams/uam_randnum.c (randnum_changepw): added in cracklib and
1102 same password checks.
1104 * sys/osx/Makefile: moved the os x server stuff into its own build
1107 * sys/linux/Makefile, sys/solaris/Makefile: key in on OSVERSION
1108 and MACHINETYPE for some stuff.
1110 1999-05-25 a sun <asun@hecate.darksunrising.blah>
1112 * sys/sunos/Makefile: various bits to make stuff work with sunos
1115 1999-05-25 a sun <asun@purgatorius.zoology.washington.edu>
1117 * etc/afpd/file.c (copyfile): only copy the header file if newname
1120 * etc/afpd/directory.c (copydir): make sure to balk if the
1121 directory already exists. in addition, make sure to preserve the
1124 1999-05-24 a sun <asun@hecate.darksunrising.blah>
1126 * bin/afppasswd/afppasswd.c: global password updating utility for
1127 the randnum authentication method.
1129 1999-05-22 a sun <asun@hecate.darksunrising.blah>
1131 * etc/uams/uam_randnum.c (afppasswd): added in global password
1132 file for the randnum authentication method. it looks for a .key
1133 file as well to handle encryption.
1135 * etc/afpd/afp_options.c (afp_options_parseline): added
1136 -passwdfile as an option so that you can specify a global randnum
1137 password file if desired.
1139 * etc/afpd/volume.c (readvolfile): we now have rwlist and rolist
1140 as an AppleVolumes.* option. if the user is in the rolist, the
1141 volume gets set as readonly. if there's a rwlist, and the user
1142 isn't in it, the volume also gets set as readonly.
1144 1999-05-21 a sun <asun@hecate.darksunrising.blah>
1146 * libatalk/adouble/ad_lock.c (ad_fcntl_lock): plug a leak if we
1147 can't allocate the reference counting variable.
1149 * etc/uams/uam_*.c: make sure that uam_setup returns an error
1152 1999-05-19 a sun <asun@hecate.darksunrising.blah>
1154 * include/atalk/paths.h (_PATH_LOCKDIR): added os x server's
1155 /var/run as the lock file directory.
1157 * etc/afpd/fork.c (afp_write): kanehara@tpk.toppan.co.jp reported
1158 a problem with FPWrite getting a request count of 0. that's
1161 * etc/afpd/Makefile: bleah. for some reason, pam doesn't like to
1162 load itself from a shared library. i've compensated by linking it
1165 * etc/uams/uam_dhx_passwd.c: okay. DHX now works. something's
1166 still screwy with the dhx_pam stuff though.
1168 1999-05-18 a sun <asun@hecate.darksunrising.blah>
1170 * etc/afpd/uam.c (uam_getname): i forgot that getname modified the
1171 username to fit what's in pw->pw_name if necessary.
1173 1999-05-16 a sun <asun@hecate.darksunrising.blah>
1175 * etc/uams/uam_dhx_passwd/pam.c: almost ready versions of the DHX
1176 authentication method. i'm still missing a little info to get it
1179 * bin/megatron/nad.c (nad_header_read): if there isn't a mac name,
1180 create it from the unix name.
1182 * bin/megatron/megatron.c (megatron): oops. need to turn fdCreator
1183 and fdType into strings.
1185 1999-05-16 a sun <asun@pelvetia>
1187 * etc/afpd/uam.c (uam_afpserver_option): changed the interface a
1188 little. now, you pass in an int * if you want to either get/set
1189 the size of the option. added in UAM_OPTION_RANDNUM for generic
1190 (4-byte granularity) random number generation.
1192 * etc/afpd/switch.c: added afp_logout to preauth_switch.
1194 1999-05-15 a sun <asun@hecate.darksunrising.blah>
1196 * bin/megatron/macbin.c (bin_open): make error message for
1197 macbinary files more informative.
1199 (test_header): added more macbinary tests. it now has a workaround
1200 for apple's incorrectly generated macbinary files.
1202 1999-05-14 a sun <asun@hecate.darksunrising.blah>
1204 * sys/solaris/Makefile: added shared library generation bits.
1206 * etc/uams: moved server-side uams here.
1208 * include/netatalk/endian.h: fixed some solaris bits.
1210 * etc/afpd/config.c (configfree): don't do an asp_close. instead,
1211 do an atp_close and free the asp object. oh yeah, as afpd needs
1212 to export symbols to its modules, make sure you don't do anything
1213 more exciting than strip --strip-debug with it.
1215 1999-05-12 a sun <asun@hecate.darksunrising.blah>
1217 * various places that use sigaction: zero out struct sigaction so
1218 that we don't send something confusing. also make sure that we
1219 don't set a timer unless we already have a sigaction set.
1221 * etc/afpd/fork.c (afp_openfork): don't error on trying to open an
1222 empty resource fork read-only. also, added back in the bit of code
1223 that prevented locks from being attempted on non-existent resource
1226 * etc/afpd/afp_options.c (getoption): added a uamlist commandline
1229 * libatalk/netddp/netddp_open.c: don't bind if nothing was passed
1232 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): oops. forgot to
1233 convert this over to use by the netddp interface.
1235 1999-05-12 a sun <asun@pelvetia>
1237 * etc/afpd/uam.c: os x server's runtime library loader is
1238 braindead. as a result, i've switched to using an exported struct
1239 with the uam's name.
1241 * bin/aecho,getzones: changed these to use the netddp interface.
1243 * libatalk/nbp/nbp_rgstr.c,unrgstr.c: fixed more leaky bits.
1245 * libatalk/netddp: abstracted the ddp interface to netddp. besides
1246 the prior socket-driven interface, there's now an os x server
1247 interface. so, instead of calling socket/sendto/recvfrom, you call
1248 netddp_open/netddp_sendto/netddp_recvfrom.
1250 1999-05-11 a sun <asun@pelvetia>
1252 * libatalk/nbp/nbp_lkup.c: oh my. nbp_lookup was fd leaky if there
1255 * etc/atalkd/main.c (main): make sure that if -dontroute is
1256 selected for all but one interface, that interface also gets
1259 1999-05-10 a sun <asun@hecate.darksunrising.blah>
1261 * etc/afpd/auth.c: re-wrote to deal with plug-in uams. it's much
1262 smaller than it used to be.
1264 1999-05-09 a sun <asun@hecate.darksunrising.blah>
1266 * etc/afpd/uams/uam_guest.c, uam_pam.c, uam_passwd.c,
1267 uam_randnum.c: uam modules. these should probably be moved out of
1268 afpd (and into something like etc/uam_server) when the printing
1269 stuff gets uam support.
1271 1999-05-08 a sun <asun@hecate.darksunrising.blah>
1273 * etc/afpd/uam.c: interface to user authentication modules.
1274 it should eventually be moved to libatalk, but that's not
1275 necessary until the printing uam stuff is done. everything is from
1276 the server-side perspective, but that's only because there aren't
1277 any client-side uses right now.
1279 * libatalk/util/module.c: generic interface to run-time library
1280 loading functions. right now, the dlfcn family and os x server's
1281 NS-style way of doing things are the ones understood. in addition,
1282 there's a DLSYM_PREPEND_UNDERSCORE for those systems that need it.
1284 * libatalk/asp/asp_write.c (asp_wrtcont): log both the read and
1285 write part of write continuations.
1287 1999-05-07 a sun <asun@hecate.darksunrising.blah>
1289 * etc/atalkd: added the ability to turn off routing for particular
1290 interfaces. specify -dontroute for each interface that you don't
1293 1999-05-06 a sun <asun@hecate.darksunrising.blah>
1295 * etc/afpd/auth.c: got rid of global clrtxtname and switched to
1296 using obj->username.
1298 1999-05-04 a sun <asun@hecate.darksunrising.blah>
1300 * libatalk/dsi/dsi_write.c (dsi_write): dsi_write could loop
1301 forever if there's a problem while it's being used. that's fixed.
1303 1999-05-01 a sun <asun@hecate.darksunrising.blah>
1305 * etc/afpd/directory.c (renamedir,copydir,deletedir): added bits
1306 so that renaming a directory works across filesystems.
1308 1999-04-27 a sun <asun@hecate.darksunrising.blah>
1310 * etc/afpd/fork.c (getforkparams): report mtime if it's > than
1311 what's stored in the header file.
1313 * config/afpd.conf: incorporated a patch by Stefan Bethke to make
1314 afpd.conf more understandable.
1316 * sys/solaris/if.c: many of the firstnet/lastnet bits weren't
1317 endian converted. that's fixed.
1319 * libatalk/adouble/ad_lock.c (adf_find(x)lock): F_RD/WRLCK aren't
1320 necessarily ORable, so use ADLOCK_RD/WR instead.
1322 (ad_fcntl_unlock): erk. fixed a typo that had the resource fork
1323 unlock accidentally getting the data fork locks.
1325 1999-04-24 a sun <asun@hecate.darksunrising.blah>
1327 * etc/afpd/fork.c (afp_openfork): always try to create a resource
1330 1999-04-21 a sun <asun@hecate.darksunrising.blah>
1332 * libatalk/adouble/ad_open.c, ad_read.c/ad_write.c, ad_flush.c:
1333 turned the mmapped header stuff into and #ifdef
1334 USE_MMAPPED_HEADERS option.
1336 * libatalk/adouble/ad_open.c (ad_header_read): darn. i forgot that
1337 the hfs fs doesn't currently have mmappable header files. rather
1338 than implement that, i just reverted back to a modified version
1339 of the old way of reading headers.
1341 1999-04-15 a sun <asun@hecate.darksunrising.blah>
1343 * etc/afpd/fork.c (afp_bytelock): byte locks become read locks on
1346 (afp_openfork): deal with read-only data forks that don't have
1347 corresponding .AppleDouble files. we can't really do anything with
1348 deny locks in this case. just make sure that read locks are set.
1350 * etc/afpd/file.c (getfilparams): oops. got the parentheses wrong
1351 around FILPBIT_FINFO.
1353 * etc/afpd/fork.c (afp_read): as we share open files now, check
1354 for fork type against of_flags instead of just checking to see if
1355 the file is open. this fixes a bug that caused resource forks to
1356 get filled with data fork information.
1358 1999-04-09 a sun <asun@porifera.zoology.washington.edu>
1360 * sys/generic/Makefile: AFP/tcp now compiles on irix with quota
1363 1999-04-09 a sun <asun@mead1.u.washington.edu>
1365 * sys/generic/Makefile: AFP/tcp now compiles on aix with quota
1368 1999-04-09 a sun <asun@saul6.u.washington.edu>
1370 * sys/generic/Makefile: AFP/tcp part now compiles on digital unix
1371 with quota support enabled.
1373 1999-04-08 a sun <asun@hecate.darksunrising.blah>
1375 * etc/afpd/volume.c, fork.c, file.c, directory.c, filedir.c,
1376 config/AppleVolumes.default: added read-only volume option.
1378 * etc/afpd/quota.c (uquota_getvolspace): modified for os x
1381 1999-04-03 a sun <asun@hecate.darksunrising.blah>
1383 * bin/megatron/macbin.c (bin_write): only pad if we need to do so
1384 (from <jk@espy.org>).
1385 (bin_header_write/read): fixed up screwed up file date
1386 generation/reading with macbinary files.
1388 * bin/megatron: changed all of the bcopy/bzero/bcmp's to
1389 memcpy/memset/memcmp's. added macbinary III support.
1391 * bin/megatron/macbin.c (bin_open): added --stdout as an option so
1392 that we can stream macbinary file creation to stdout.
1394 * bin/megatron/megatron.c: incorporated information patch (--header
1395 and --macheader) from <fmorton@base2inc.com>.
1398 1999-04-02 a sun <asun@hecate.darksunrising.blah>
1400 * etc/afpd: whee! there are no more bcopy/bcmp's in this
1403 * libatalk: changed the bcopy/bzero's to memcpy/memset's. added in
1404 dummy ints for some of the files that can get compiled to empty
1405 objects. check for the type of msync() available as well.
1407 1999-03-31 a sun <asun@hecate.darksunrising.blah>
1409 * INSTALL/README.GENERIC: added information for a generic
1410 architecture. It includes the information needed to get netatalk
1411 to compile on a random unix platform.
1413 * etc/afpd/quota.c: moved the quota stuff here so that we can
1414 #ifdef it out on a machine without quota support.
1416 1999-03-30 a sun <asun@hecate.darksunrising.blah>
1418 * libatalk/adouble/ad_lock.c: reference count the locked ranges as
1419 well. this prevents multiple read locks on the same byte range
1420 from disappearing if one user disappears.
1422 (ad_fcntl_lock): here are the current rules for file
1424 1) if there's a appledouble header, we use the beginning
1425 of that for both data and resource forks.
1426 2) if there isn't, we use the end of the data fork (or past the
1427 end on 64-bit machines)
1429 1999-03-28 a sun <asun@hecate.darksunrising.blah>
1431 * libatalk/adouble/ad_open.c (ad_refresh): okay. mmapping the
1432 appledouble entry parts is done.
1434 * libatalk/cnid/cnid_add.c (cnid_add): prevent anyone from adding
1437 1999-03-27 a sun <asun@hecate.darksunrising.blah>
1439 * libatalk/adouble/ad_open.c (ad_refresh): started making the
1440 appledouble header parsing more generic so that we can read in
1441 arbitrary appledouble header files. i just mmap the parts that we
1444 1999-03-22 a sun <asun@hecate.darksunrising.blah>
1446 * etc/afpd/file.c (afp_copyfile): return the correct error
1447 response on a failed copy. also, error if the file is already open
1448 to prevent problems with locks. we really need to ad_lock
1449 this during the copy
1451 1999-03-21 a sun <asun@hecate.darksunrising.blah>
1453 * etc/afpd/volume.c (readvolfile): switched volume options to
1454 using ':' as a delimiter as that's one of the characters that's
1455 not allowed as part of a mac filename.
1456 (volset): changed access to allow/deny
1458 * etc/afpd/auth.c (noauth_login): make sure that the username gets
1461 1999-03-17 a sun <asun@hecate.darksunrising.blah>
1463 * NOTE to myself: jeremy allison said that samba uses refcounts to
1464 prevent close() from killing all the byte locks. so, i've started
1465 converting afpd to using refcounting as well. luckily, we already
1466 have of_findname, so we know when files are open. in cases where
1467 files are already open, this will replace an ad_open with a lookup
1470 * etc/afpd/directory.c (getdirparams/getfilparams): check for
1471 NULL names when getting directory/file names.
1473 * etc/afpd/directory.{c,h} (DIRDID_ROOT/DIRDID_ROOT_PARENT): make
1474 sure these are always in network byte order.
1476 1999-03-15 a sun <asun@hecate.darksunrising.blah>
1478 * etc/afpd/fork.c (afp_openfork): okay, fixed the file
1479 synchronization bits. now, we use two bytes to do the read/write
1480 stuff. when access is needed, a read lock is attempted. if a deny
1481 lock is needed, a write lock is attempted. we even handle the
1482 access None mode now by saving the access modes.
1484 * etc/afpd/fork.h (AFPFORK_ACCMASK): started adding bits so that
1485 we can obey all of the file synchronization rules.
1487 * etc/afpd/fork.c (afp_bytelock): got the meaning of the clearbit
1488 reversed. with helios lantest's lock/unlock 4000 times test, it
1489 looks like i get <1 second overhead on my machine when using byte
1490 locks. NOTE: this will get a little worse when serialization gets
1491 added. in addition, 0x80000000 only works for 64-bit machines. i
1492 reserve the last allowable bit for 32-bit machines.
1494 actually, both 64-bit machines and 32-bit machines use 0x7FFFFFFF
1495 now as i'm able to trigger a kernel oops in linux with the 64-bit
1498 (afp_read/afp_write): make sure to use the same offset when doing
1501 1999-03-14 a sun <asun@hecate.darksunrising.blah>
1503 * libatalk/adouble/ad_lock.c: i went and implemented a bunch of
1504 stuff to get byte locks to work correctly (except for the
1505 serialization) only to discover that files that use byte locks
1506 also request a deny write mode. luckily, byte locks only cover up
1507 to 0x7FFFFFFF. so, i'll just use 0x80000000 for the
1508 synchronization locks.
1510 1999-03-08 a sun <asun@hecate.darksunrising.blah>
1512 * sys/{*bsd,ultrix,solaris,linux}/Makefile (depend): surround
1513 DEPS with double quotes so that multiple defines work.
1515 1999-03-06 a sun <asun@hecate.darksunrising.blah>
1517 * libatalk/adouble/ad_write.c, ad_read.c: make off off_t in size.
1519 * libatalk/adouble/ad_flush.c (adf_fcntl_relock), ad_lock.c
1520 (adf_fcntl_locked): okay. fcntl locks now check against multiple
1521 programs on the same machine opening the same file. current
1522 problems with the mechanism that i don't want to fix unless
1524 1) there's a race during the relock phase. serialization
1526 2) it assumes that each fd only locks a single contiguous
1527 range at a time. keeping a list of locked ranges would
1530 also, i changed the default to using fcntl locks. if the above two
1531 are really necessary, i'll probably switch to something a little
1532 more featureful like the berkeley db's lock manager.
1534 (note to myself: stuff new from asun2.1.3 from 1999-03-03)
1536 1999-03-05 a sun <asun@hecate.darksunrising.blah>
1538 * libatalk/adouble/ad_lock.c: got rid of the endflag checks to
1539 reduce system calls a little.
1541 * etc/afpd/auth.c (getname): do a case-insensitive compare on the
1544 * sys/solaris/Makefile: added 64-bit solaris patch from
1545 <jason@pattosoft.com.au>.
1547 1999-03-03 a sun <asun@hecate.darksunrising.blah>
1549 * include/netatalk/endian.h: make solaris 2.5 complain less.
1551 * bin/adv1tov2/adv1tov2.c, libatalk/adouble/ad_open.c (ad_v1tov2):
1552 fixed a couple problems with the adv1tov2 stuff.
1554 1999-02-26 a sun <asun@hecate.darksunrising.blah>
1556 * etc/afpd/volume.c (afp_openvol): erk. the volume password gets
1557 aligned along an even boundary.
1559 1999-02-23 a sun <asun@hecate.darksunrising.blah>
1561 * etc/afpd/volume.c (readvolfile): added volume password support.
1563 1999-02-14 a sun <asun@hecate.darksunrising.blah>
1565 * etc/atalkd/multicast.c (addmulti): added FreeBSD's data-link
1566 layer multicast setting bits.
1568 * libatalk/adouble/ad_open.c (ad_v1tov2): make sure to stick in
1569 prodos field info when converting.
1571 * rc.atalk.redhat: added pidof checking in case the machine
1572 crashes. also added rc.atalk.wrapper to the redhat rc script
1575 1999-02-07 a sun <asun@hecate.darksunrising.blah>
1577 * etc/afpd/fork.c (afp_setforkparams): make sure to do better
1578 error detection here and more fully report error conditions.
1580 (flushfork): make sure to flush the header if necessary (rfork
1581 length changed or modification date needs to be set).
1583 (afp_write): ugh. this wasn't returning the right values for the
1584 last byte written if the endflag was set. in addition, it was
1585 setting the modification date. that should be left to FPCloseFork
1586 and FPFlush(Fork). this fixes a problem that shows up with
1589 NOTE: as of now, changes to the rfork info are the only things
1590 that aren't flushed immediately when altered.
1592 * etc/afpd/fork.c (get/setforkparams), ofork.c: what ugliness. we
1593 need to report bitmap errors if we try to fiddle with the wrong
1594 fork. i added an of_flags field to keep things sorted.
1596 * libatalk/adouble/ad_open.c (ad_v1tov2): oops. in all of the
1597 movement, i forgot to make sure that the pre-asun2.2.0 features
1600 1999-02-06 a sun <asun@hecate.darksunrising.blah>
1602 * etc/afpd/filedir.c (afp_moveandrename): make sure to save the
1603 old name even when it's a directory.
1605 * globals.h: added oldtmp and newtmp to AFPObj to reduce the
1606 number of buffers used. use these when needed in afp_* calls.
1608 * etc/afpd/directory.c (deletecurdir): delete stray .AppleDouble
1609 files when deleting a directory.
1611 1999-02-05 a sun <asun@hecate.darksunrising.blah>
1613 * etc/afpd/file.c (afp_createfile): fixed a hard create error
1616 * fixed up a few bobbles in the netatalk-990130 merge.
1618 * the noadouble option should be pretty much implemented. here's
1620 when a directory is created, the corresponding
1621 .AppleDouble directory is not.
1623 comments, dates, and other file attributes will get
1624 silently ignored and not result in the creation of a new
1625 .AppleDouble directory.
1627 however, if anything possessing a resource fork is copied
1628 into that directory, the corresponding .AppleDouble
1629 directory will be created. once this happens, any
1630 other file in the directory can acquire an AppleDouble
1631 header file in the future.
1633 1999-02-03 a sun <asun@hecate.darksunrising.blah>
1635 * merged in the rest of netatalk-990130.
1637 * sys/solaris: merged in netatalk-990130 changes.
1639 * etc/afpd/file.c,fork.c,desktop.c libatalk/adouble/ad_sendfile.c:
1640 tested and fixed the sendfile bits on linux. it looks like linux
1641 doesn't permit socket -> file sendfiles yet.
1643 * etc/afpd/fork.c (afp_read): we can't stream FPRead's with
1644 newline character checking on.
1646 1999-02-02 a sun <asun@hecate.darksunrising.blah>
1648 * etc/afpd/fork.c (afp_flush), ofork.c (of_flush): FPFlush
1649 operates on a per-volume basis.
1651 1999-01-31 a sun <asun@hecate.darksunrising.blah>
1653 * etc/afpd/file.c (copyfile): sendfile bits added here also.
1655 * etc/afpd/desktop.c (afp_geticon): added sendfile bits here as
1658 * libatalk/adouble/ad_sendfile.c (ad_writefile/ad_readfile):
1659 implemented sendfile bits. currently, there's support for linux
1660 and freebsd. unfortunately, freebsd's implementation doesn't allow
1661 file->file or socket->file copies. bleah.
1663 1999-01-30 a sun <asun@hecate.darksunrising.blah>
1665 * etc/afpd/file.c (setfilparams), directory (setdirparams),
1666 volume.c (volset): added in the beginnings of a NOADOUBLE option
1667 for those that don't want AppleDouble headers to be created by
1668 default. it doesn't really work that well right now.
1670 1999-01-29 a sun <asun@hecate.darksunrising.blah>
1672 * libatalk/adouble/ad_open.c (ad_v1tov2): separated v1tov2 bits
1673 from ad_refresh. made broken v1 header checking the default. fixed
1674 broken v1 date checking. now, it just checks to see if the v1
1675 MDATE is > than st_mtime by 5 years.
1677 * etc/afpd/directory.c: make date setting alter directory dates as
1680 1999-01-24 a sun <asun@hecate.darksunrising.blah>
1682 * etc/afpd/afp_dsi.c (alarm_handler,afp_over_dsi): added a
1683 CHILD_RUNNING flag to prevent afpd from timing out on long copies.
1685 1999-01-21 a sun <asun@hecate.darksunrising.blah>
1687 * etc/afpd/volume.c (afp_openvol), libatalk/cnid/cnid_nextid.c:
1688 shift the beginning of the fake did's if necessary.
1690 * libatalk/adouble/ad_open.c (ad_refresh): fixed screwed-up date
1693 * libatalk/cnid/cnid_add.c,cnid_open.c,cnid_close.c: made some
1694 changes so that the CNIDs will still work even when the .AppleDB
1695 directory is read-only. if you're still allowed to create files on
1696 these volumes, you'll get a temporary id for those.
1698 1999-01-20 a sun <asun@hecate.darksunrising.blah>
1700 * libatalk/cnid/{cnid_close.c,cnid_open.c}: added bits so that log
1701 files get cleared out on cnid_close() if it's the last user for a
1704 1999-01-18 a sun <asun@hecate.darksunrising.blah>
1706 * etc/afpd/volume.c (afp_setvolparams): added FPSetVolParms. this
1707 allows us to set the backup date on the server.
1709 * etc/afpd/file.c (afp_exchangefiles): whee! we now have
1710 FPExchangeFiles. we also have FPDeleteID, so that only leaves us
1711 with FPCatSearch to do.
1713 1999-01-16 a sun <asun@hecate.darksunrising.blah>
1715 * sys/solaris/ddp.c (ddp_rput): added a couple htons()'s for the
1718 1999-01-11 a sun <asun@hecate.darksunrising.blah>
1720 * etc/afpd/volume.c (volset, afp_openvol): you can now specify a
1721 dbpath= in AppleVolumes.* for the CNID database.
1723 * libatalk/adouble/ad_open.c (ad_refresh): if we build in an
1724 appledouble v1 environment, turn on v1compat by default.
1726 1999-01-10 a sun <asun@hecate.darksunrising.blah>
1728 * libatalk/adouble/ad_open.c (ad_refresh): added v1compat option
1729 to handle broken ad headers.
1731 * etc/afpd/file.c (setfilparams): we need to make sure that we
1732 flush the file if we've created it even if there's an error. the
1733 magic number/version don't get saved if we don't.
1735 * etc/afpd/appl.c, etc/afpd/directory.c, etc/afpd/desktop.c: added
1738 1998-12-30 a sun <asun@hecate.darksunrising.blah>
1740 * etc/afpd/volume.c (afp_openvol): got rid of unnecessary v_did.
1742 * etc/afpd/file.c (afp_resolveid, afp_createid): added these two
1745 * well, what do you know? the cnid stuff compiles in.
1747 1998-12-29 a sun <asun@hecate.darksunrising.blah>
1749 * etc/afpd/fork.c, directory.c, file.c, filedir.c, volume.c,
1750 enumerate.c: added in stubs for CNID database conditional on
1751 AD_VERSION > AD_VERSION1.
1753 * etc/afpd/nls/makecode.c: added iso8859-1 mapping.
1755 1998-12-27 a sun <asun@hecate.darksunrising.blah>
1757 * bin/adv1tov2/adv1tov2.c: turn non-printable ascii characters
1758 into hex code as well.
1760 1998-12-21 a sun <asun@hecate.darksunrising.blah>
1762 * etc/afpd/auth.c: fixed FPChangePW for 2-way randnums.
1764 1998-12-15 a sun <asun@hecate.darksunrising.blah>
1766 * etc/afpd/fork.c (read_file/write_file): do crlf translation in
1767 both directions so that we can recover from problems if
1770 1998-12-14 a sun <asun@hecate.darksunrising.blah>
1772 * bin/adv1tov2/adv1tov2.c: small utility program that recursively
1773 descends a directory and converts everything it sees into
1776 1998-12-13 a sun <asun@hecate.darksunrising.blah>
1778 * libatalk/adouble/ad_flush.c (ad_rebuild_header): moved the
1779 header rebuilding here so that ad_refresh can use it.
1781 * libatalk/adouble/ad_open.c (ad_refresh): added locking to v1->v2
1784 * bin/megatron/asingle.c: yuk. removed all of
1785 the duplicate stuff here and had it use the #defines in adouble.h.
1787 * libatalk/adouble/ad_open.c (ad_refresh): finished v1 -> v2
1788 conversion routine. we still need a shortname creator and a cnid
1789 database for the v2 features to be useful.
1791 1998-12-11 a sun <asun@hecate.darksunrising.blah>
1793 * libatalk/adouble/ad_open.c (ad_refresh): punt if we get a file
1794 that we don't understand.
1796 1998-12-10 a sun <asun@hecate.darksunrising.blah>
1798 * etc/afpd/desktop.c (utompath,mtoupath): simplified the codepage
1799 stuff. also made sure to lower/upper the 8-bit characters as
1802 * libatalk/util/strdicasecmp.c: the casemapping had a few wrong
1805 * etc/afpd/fork.c (getforkparams): make sure that the ROpen/DOpen
1806 attribute bits are in the correct byte ordering.
1808 1998-12-09 a sun <asun@hecate.darksunrising.blah>
1810 * etc/afpd/volume.c (volset): made prodos an option to options=
1811 flag. also added crlf as an option.
1813 * libatalk/adouble/ad_open.c (ad_refresh): fix up times if
1815 (ad_open): deal correctly with 0-length files by treating them as
1818 * etc/afpd/volume.c (getvolparams), file.c (get/setfilparams),
1819 fork.c (getforkparams), directory.c (get/setdirparams): finished
1820 adding appledouble version 1 and 2 date conversion. also added
1823 * etc/afpd/volume.c (getvolparams): make sure to flush the header
1824 file if we needed to fiddle with it.
1826 * libatalk/adouble/ad_date.c, ad_attr.c: date/attribute
1827 setting/retrieval code.
1829 * libatalk/adouble/ad_open.c (ad_open): initialize date
1830 structures here instead of elsewhere.
1832 1998-12-07 a sun <asun@hecate.darksunrising.blah>
1834 * etc/afpd/directory.c, fork.c, volume.c, file.c: added unix<->afp
1835 time conversion code.
1837 1998-12-05 a sun <asun@hecate.darksunrising.blah>
1839 * etc/afpd/volume.c (volset): changed prodos setting to
1842 1998-12-04 a sun <asun@hecate.darksunrising.blah>
1844 * etc/afpd/volume.c (volset): okay. you now have the following
1845 options to casefold: lowercase,uppercase,xlatelower,xlateupper
1846 tolower -> lowercases everything in both directions
1847 toupper -> uppercases everything in both directions
1848 xlatelower -> client sees lowercase, server sees uppercase
1849 xlateupper -> client sees uppercase, server sees lowercase
1851 NOTE: you only should use this if you really need to do so. this
1852 and the codepage option can cause mass confusion if applied
1853 blindly to pre-existing directories.
1855 1998-12-03 a sun <asun@hecate.darksunrising.blah>
1857 * etc/afpd/desktop.c (utompath,mtoupath), etc/afpd/volume.h: added
1858 multiple options to casefold. bits 0 and 1 deal with MTOU, and
1859 bits 2 and 3 deal with UTOM. i did it that way so that you can
1860 casefold in one direction only or in both directions if
1861 desired. needless to say, setting both bits for UTOM or MTOU
1862 doesn't make any sense. right now, toupper takes precedence in
1863 MTOU, and tolower takes precedence in UTOM.
1865 1998-12-02 a sun <asun@hecate.darksunrising.blah>
1867 * etc/afpd/afp_options.c (afp_options_*): added -uampath and
1868 -codepagepath to the list of available options. they specify the
1869 directories to look for uam modules and codepages,
1870 respectively. currently, -uampath doesn't do anything.
1872 * etc/afpd/volume.c (readvolfile): spruced up options to
1873 AppleVolumes files. now you can have mtoufile=<codepage.x>,
1874 utomfile=<codepage.y>, casefold=<num> for volumes.
1876 * etc/afpd/desktop.c (utompath,mtoupath): added
1877 codepage/casefolding support. casefold is currently an int that
1878 could have multiple actions. right now, i just lowercase in
1879 mtoupath and uppercase in utompath.
1881 * etc/afpd/ofork.c (of_alloc, of_findname, of_rename): added vol
1882 as an additional specifier so that we don't have problems with
1883 the same path names on multiple volumes.
1885 1998-11-29 a sun <asun@purgatorius.zoology.washington.edu>
1887 * etc/afpd/volume.c (getvolparams): added AFP2.1 volume attribute
1890 1998-11-24 a sun <asun@purgatorius.zoology.washington.edu>
1892 * etc/atalkd/config.c (readconf, getifconf): added IFF_SLAVE to
1893 prevent atalkd from trying to use a slave channel.
1895 1998-11-23 a sun <asun@purgatorius.zoology.washington.edu>
1897 * etc/afpd/volume.c (getvolparams): we shouldn't set the custom
1898 icon bit by default on the root directory. that screws up pre-OS 8
1901 1998-11-19 a sun <asun@purgatorius.zoology.washington.edu>
1903 * libatalk/dsi/dsi_getsess.c (dsi_getsession): ignore SIGPIPE's
1904 so that we can gracefully shut down the server side.
1906 * etc/afpd/afp_dsi.c (afp_over_dsi), etc/afpd/afp_options.c,
1907 libatalk/dsi/dsi_getsess.c (dsi_getsession),
1908 libatalk/asp/asp_getsess.c (asp_getsession): made the tickle timer
1909 interval an option (-tickleval <sec>).
1911 * etc/afpd/afp_dsi.c (afp_dsi_timedown): added child.die so that
1912 we don't stomp on a shutdown timer. libatalk/dsi/dsi_read.c,
1913 dsi_write.c both save/restore the old timer, so they don't really
1914 care what the actual value is.
1916 1998-11-18 a sun <asun@purgatorius.zoology.washington.edu>
1918 * due to the recent obsession with bug fixing and low-level dsi
1919 cleanups, i've decided that this should really be asun2.1.1
1920 instead of asun2.1.0a.
1922 1998-11-17 a sun <asun@purgatorius.zoology.washington.edu>
1924 * libatalk/dsi/dsi_tcp.c (dsi_tcp_open): moved the afpd connection
1925 announcement here from etc/afpd/afp_dsi.c.
1927 * libatalk/dsi/dsi_stream.c: moved all of the read/write functions
1928 into here as they're pretty generic. now, the protocol specific
1929 stuff only handles open and close.
1931 * etc/afpd/fork.c (afp_read/write), desktop.c (afp_geticon),
1932 file.c (copyfile), include/atalk/dsi.h (dsi_writefile/readfile):
1933 added initial stubs for sendfile support. i still need to go
1934 through and calculate the appropriate offsets to use.
1936 * libatalk/dsi/dsi_read.c, dsi_write.c: disable the interval timer
1937 instead of just ignoring it.
1939 * etc/afpd/desktop.c (afp_geticon), etc/afpd/fork.c (afp_read),
1940 libatalk/dsi/dsi_read.c (dsi_readinit, dsi_readinit): modified the
1941 dsi_read interface to return errors so that i can kill things
1944 1998-11-16 a sun <asun@purgatorius.zoology.washington.edu>
1946 * libatalk/dsi/dsi_tcp.c (dsi_tcp_send/dsi_tcp_write): erk. read()
1947 and write() treat a return of 0 differently.
1949 1998-11-16 a sun <asun@hecate.darksunrising.blah>
1951 * libatalk/dsi/dsi_read.c (dsi_readinit): make sure to stick in
1954 1998-11-15 a sun <asun@purgatorius.zoology.washington.edu>
1956 * etc/afpd/fork.c (afp_read): re-ordered some of the checks here
1957 to return earlier on 0-sized files.
1959 1998-11-13 a sun <asun@purgatorius.zoology.washington.edu>
1961 * etc/afpd/afp_dsi.c (afp_over_dsi): moved the dsi->noreply toggle
1962 check to here from dsi_cmdreply.
1964 1998-11-11 a sun <asun@purgatorius.zoology.washington.edu>
1966 * etc/atalkd/zip.c (zip_packet): make sure to copy multicast zone
1967 back out. (reported by Michael Zuelsdorff <micha@dolbyco.han.de>)
1969 1998-11-09 a sun <asun@purgatorius.zoology.washington.edu>
1971 * etc/afpd/directory.c (getdirparams): changed unknown bit reply
1972 code to AFPERR_BITMAP instead of AFPERR_PARAM.
1974 1998-11-06 a sun <asun@purgatorius.zoology.washington.edu>
1976 * etc/afpd/enumerate.c (afp_enumerate), directory.c (renamedir):
1977 fixed a couple of failed realloc leaks.
1979 * etc/afpd/filedir.c (afp_moveandrename, afp_rename): added bits
1980 to deal with case-insensitive, case-preserving filesystems.
1982 1998-10-30 a sun <asun@purgatorius.zoology.washington.edu>
1984 * etc/afpd/auth.c: fixed randnum password changing check.
1986 1998-10-27 a sun <asun@purgatorius.zoology.washington.edu>
1988 * etc/atalkd/main.c: add a check for SIOCATALKDIFADDR if
1991 * etc/afpd/volume.c (getvolparams): ad_open had the wrong
1994 * etc/afpd/unix.c (setdeskowner): added a little extra space to
1995 prevent buffer overflows here.
1997 1998-10-26 a sun <asun@purgatorius.zoology.washington.edu>
1999 * sys/linux/Makefile: fixed PAM message.
2001 * sys/solaris/Makefile: make failure to ln -s a non-fatal error.
2003 * etc/papd/session.c, bin/pap/pap.c: changed sequence count to
2004 wrap from 0 -> 1 instead of from 0xFFFF -> 1.
2006 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): actually, we
2007 should check against the entire unix name.
2009 1998-10-21 a sun <asun@purgatorius.zoology.washington.edu>
2011 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure
2012 to check against mac name.
2014 1998-10-19 a sun <asun@purgatorius.zoology.washington.edu>
2016 * etc/afpd/auth.c (afp_changepw): make password changing deal
2017 correctly with "real" user names. also, moved seteuid() to before
2018 the pam_authenticate() bit as shadow passwords need that.
2020 * etc/afpd/enumerate.c (afp_enumerate): make sure to check the mac
2021 name against MACFILELEN.
2023 1998-10-16 a sun <asun@purgatorius.zoology.washington.edu>
2025 * etc/afpd/file.c (renamefile), filedir.c (afp_rename),
2026 directory.c (renamedir): use strndiacasecmp() for AFPERR_SAMEOBJ
2027 checks. also make sure test occurs before checking to see if the
2030 1998-10-15 a sun <asun@purgatorius.zoology.washington.edu>
2032 * etc/afpd/auth.c (afp_changepw): fixed a bit of brain damage. i
2033 forgot that password changing needs root privileges to work.
2035 * etc/afpd/auth.c (PAM_conversation): the supplied code was
2036 incorrect. i cleaned it up a bit.
2038 * sys/linux/Makefile: fixed the installation bits.
2040 1998-10-14 a sun <asun@purgatorius.zoology.washington.edu>
2042 * etc/afpd/auth.c (afp_changepw): don't kill the connection here
2043 if there's a problem.
2045 1998-10-10 a sun <asun@purgatorius.zoology.washington.edu>
2047 * etc/afpd/enumerate.c, fork.c, ofork.c, file.c,
2048 globals.h, directory.c, auth.c: #defined MACFILELEN and used
2049 that. also made sure that files > MACFILELEN never show up.
2051 1998-09-25 a sun <asun@purgatorius.zoology.washington.edu>
2053 * etc/{afpd,papd,atalkd}/bprint.c (bprint): got rid of the
2054 spurious pointer dereference.
2056 * etc/afpd/ofork.c (of_alloc/of_rename): allocate the max mac file
2057 length so that we don't need to realloc.
2059 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure to
2060 return AFPERR_BUSY if the dest has an ofork open.
2062 * etc/afpd/file.c (renamefile), directory.c (renamedir), filedir.c
2063 (afp_rename): return AFPERR_SAMEOBJ if source == dest
2065 1998-09-21 a sun <asun@purgatorius.zoology.washington.edu>
2067 * etc/afpd: went through and looked for places that needed to use
2068 curdir instead of dir. i think i have them all right now.
2070 * etc/afpd/filedir.c (afp_moveandrename): wasn't keeping track of
2071 curdir correctly. what this really means is that cname should be
2072 fixed to return everything it changes as opposed to changing a
2075 1998-09-19 a sun <asun@purgatorius.zoology.washington.edu>
2077 * etc/afpd/config.c (configinit): do the right thing if
2078 AFPConfigInit fails.
2080 1998-09-18 a sun <asun@purgatorius.zoology.washington.edu>
2082 * etc/afpd/config.c (ASP/DSIConfigInit, configfree): how
2083 embarrassing. i wasn't doing refcounts correctly.
2085 1998-09-17 a sun <asun@purgatorius.zoology.washington.edu>
2087 * etc/afpd/nfsquota.c (getnfsquota): ultrix uses dqb_bwarn instead
2090 * sys/ultrix/Makefile: ultrix understands the old rquota format.
2092 * etc/afpd/ofork.c (of_findname): erk. forgot to only search in
2093 the current directory.
2094 (of_rename): erk. changed it to handle renaming a file that has
2095 been opened multiple times.
2097 * etc/atalkd: made sure that if you don't specify -router, things
2098 are as they were before.
2100 1998-09-13 a sun <asun@purgatorius.zoology.washington.edu>
2102 * etc/afpd/status.c (status_flags): forgot to turn on password
2103 setting if randnum passwords are being used.
2105 1998-09-11 a sun <asun@purgatorius.zoology.washington.edu>
2107 * etc/afpd/unix.c (setdirmode): erk. make sure only to setgid on
2110 * bin/aecho/aecho.c (main): incorporated -c <num> (ala ping) patch
2111 from "Fred Lindberg" <lindberg@id.wustl.edu>.
2113 1998-09-03 a sun <asun@purgatorius.zoology.washington.edu>
2115 * etc/afpd/directory.c (afp_closedir, afp_opendir): added these in
2116 for more AFP 2.0 compliance. unfortunately, apple's appleshare
2117 client doesn't like non-fixed directory ids.
2119 1998-08-31 a sun <asun@purgatorius.zoology.washington.edu>
2121 * etc/afpd/volume.c (accessvol): the accessible volume list can
2122 now be controlled by groups and usernames. just use something of
2123 the following form: @group,name,name2,@group2,name3
2125 NOTE: you can't have any spaces, and the parser forces you to
2126 include all options. in this case, there are some apple II options
2127 that need to be entered. they need to go away soon anyway.
2129 * etc/afpd/auth.c (getname): oops. i forgot to copy the gecos
2130 field into a temporary buffer before calling strtok.
2132 1998-08-29 a sun <asun@hecate.darksunrising.blah>
2134 * etc/atalkd/main.c (as_timer), rtmp.c (rtmp_delzones): when the
2135 last router on an interface goes down, we need to delete the
2136 interface's zone table.
2138 1998-08-28 a sun <asun@purgatorius.zoology.washington.edu>
2140 * etc/afpd/status.c (afp_getsrvrinfo): although it's never used,
2141 i've added this in to increase AFP compliance.
2143 * etc/afpd/auth.c (afp_getuserinfo): added FPGetUserInfo -- this
2144 should make afpd compatible with OS 8.5's Nav Services.
2146 * etc/atalkd/config.c,main.c: -router now specifies router mode
2147 with any number of interfaces.
2149 1998-08-27 a sun <asun@purgatorius.zoology.washington.edu>
2151 * etc/atalkd/main.c (as_timer): well, i figured out how to set up
2152 atalkd as a single-interface router. now, you can get zones with
2153 only single interfaces! i'm only waiting on wes for the approved
2154 configuration toggle.
2156 1998-08-26 a sun <asun@purgatorius.zoology.washington.edu>
2158 * libatalk/adouble/ad_lock.c, include/atalk/adouble.h: turned the
2159 ADLOCK_* into real #defines and added translations in the
2160 lock-type specific functions. this should make it easier to
2161 recompile things without screwing up.
2163 1998-08-26 a sun <asun@hecate.darksunrising.blah>
2165 * etc/atalkd/nbp.c (nbp_packet): forgot to handle another local
2168 1998-08-25 a sun <asun@hecate.darksunrising.blah>
2170 * etc/afpd/status.c (status_server): changed status_server to
2171 use only the obj part of obj:type@zone-style names.
2173 * etc/atalkd/nbp.c (nbp_packet): unregistering wasn't handling
2174 zones properly. it was matching on anything but the actual zone.
2176 1998-08-18 a sun <asun@purgatorius.zoology.washington.edu>
2178 * etc/afpd/auth.c (clrtxt_login): added pam_set_time(PAM_TTY) so
2179 that solaris' pam session setup doesn't crap out.
2181 1998-08-17 a sun <asun@purgatorius.zoology.washington.edu>
2183 * etc/atalkd/multicast.c (zone_bcast): fixed to do the right thing
2184 with zip multicast info.
2186 1998-08-15 a sun <asun@purgatorius.zoology.washington.edu>
2188 * etc/afpd/nfsquota.c: made the old-style rquota fields dependent
2189 upon -DUSE_OLD_RQUOTA and defined that for sunos. also included
2190 <sys/time.h> for ultrix breakage.
2192 1998-08-13 a sun <asun@purgatorius.zoology.washington.edu>
2194 * etc/afpd/filedir.c (afp_rename), etc/afpd/ofork.c (of_rename): i
2195 knew that speeding up of_findname would be useful. in any case, i
2196 discovered the source of yet another small AFP non-compliance that
2197 was confusing WordPerfect. on an afp_rename, we also need to
2198 rename the corresponding ofork. i've added an of_rename() to do
2201 1998-08-13 a sun <asun@hecate>
2203 * etc/afpd/ofork.c (of_dealloc,of_alloc): sped up dealloc by
2204 sticking refnum in ofork.
2206 1998-08-12 a sun <asun@hecate>
2208 * etc/afpd/fork.c (afp_openfork): added already open attribute
2211 * etc/afpd/ofork.c: added a hashed of_findname.
2213 1998-08-06 a sun <asun@purgatorius.zoology.washington.edu>
2215 * etc/afpd/fork.c (afp_openfork): fixed a problem with opening
2216 forks from read-only non-appledouble media.
2218 1998-07-23 a sun <asun@purgatorius.zoology.washington.edu>
2220 * etc/afpd/afs.c (afs_getvolspace), etc/afpd/volume.c
2221 (getvolspace): modified them to treak afs like the other
2222 getvolspaces w.r.t. VolSpace.
2224 1998-07-21 a sun <asun@purgatorius.zoology.washington.edu>
2226 * etc/afpd/unix.c (mountp): erk. i forgot that symlinks are often
2227 used for filesystems. nfs quotas sometimes failed as a
2228 result. that's fixed now.
2230 1998-07-20 a sun <asun@purgatorius.zoology.washington.edu>
2232 * etc/afpd/auth.c (login): added a -DRUN_AS_USER #define so that
2233 it's simple to run the server process as a non-root user.
2235 1998-07-17 a sun <asun@purgatorius.zoology.washington.edu>
2237 * etc/afpd/nfsquota.c (callaurpc, getnfsquota), volume.h: it turns
2238 out that i was opening lots of sockets with callaurpc. now, the
2239 socket gets saved and reused.
2241 NOTE: quota-1.55-9 from redhat 5.x doesn't return the correct size
2242 for rquota's bsize. unless fixed, rquota will report incorrect
2245 1998-07-08 a sun <asun@purgatorius.zoology.washington.edu>
2247 * etc/afpd/uam/README: added some preliminary ideas on a
2248 plug-in uam architecture. in addition, this should allow arbitrary
2249 afp function replacement. eventually, auth.c should get a
2252 1998-07-07 a sun <asun@purgatorius.zoology.washington.edu>
2254 * etc/afpd/nfsquota.c: added headers and redefined a couple
2255 structure fields so that sunos4 compiles.
2257 * libatalk/compat/rquota_xdr.c: compile if we're using glibc <
2258 2. this should get redhat 4.2 machines. NOTE: they're still
2259 missing librpcsvc.a, so they'll need to remove that from the
2262 1998-07-06 a sun <asun@purgatorius.zoology.washington.edu>
2264 * libatalk/compat/rquota_xdr.c: it turns out that solaris is
2265 missing a couple functions needed for rquota support. here they
2268 * etc/afpd/unix.c (mountp): fixed the nfs detection for
2269 solaris. we still need bsd and ultrix.
2271 1998-07-05 a sun <asun@hecate>
2273 * include/atalk/adouble.h: marked out space for appledouble v2.
2275 1998-07-04 a sun <asun@hecate>
2277 * etc/afpd: plugged up some ad_open leaks. made sure that we don't
2278 get negative numbers for length fields and such.
2280 1998-07-04 a sun <asun@hecate>
2282 * etc/afpd/nfsquota.c (getnfsquota): added nfs rquota
2283 support. Robert J. Marinchick <rjm8m@majink1.itc.virginia.edu>
2284 provided the initial bits from the bsd quota program.
2286 * etc/afpd/unix.c (getquota): made getquota call getfsquota or
2287 getnfsquota depending upon the type of fs.
2289 * etc/afpd/unix.c (mountp/special): munged mountp and
2290 special to return either the nfs mount point or the fs
2291 device. set the vol->v_nfs flag if it's nfs.
2293 * etc/afpd/volume.c (getvolspace): xbfree and xbtotal will now
2294 honor results returned from uquota_getvolspace.
2296 1998-06-29 a sun <asun@purgatorius.zoology.washington.edu>
2298 * etc/afpd/file.c (copyfile): mmapping the file copy only helps on
2299 multiple copies. as that's not the case here, i've reverted to
2300 just doing read + write.
2302 1998-06-28 a sun <asun@purgatorius.zoology.washington.edu>
2304 * sys/linux/Makefile: fixed the redhat-style atalk
2305 installation. also, it doesn't over-write an existing
2306 /etc/rc.d/init.d/atalk file.
2308 * etc/afpd, libatalk/adouble/ad_write.c: removed <sys/file.h> and
2309 </usr/ucbinclude/sys/file.h> so that we rely upon adouble.h.
2311 1998-06-19 a sun <asun@purgatorius.zoology.washington.edu>
2313 * changed sys/linux/Makefile to install a redhat-style sysv atalk
2314 script instead of the bsd one.
2316 * include/atalk/adouble.h: moved same-name list stub to struct
2319 Thu Jun 18 18:20:28 1998 a sun <asun@purgatorius>
2321 * changed to asunx.y.z notation as i was getting tired of
2322 increasing numbers. as this version is undergoing a fairly
2323 substantial overhaul, i bumped it to 2.1.0. don't ask why asun1.0
2324 never existed. i just started at 2.0.
2326 * ofork (etc/afpd/{ofork.c,ofork.h,fork.c}: put in skeleton code
2327 for hashed-by-name oforks and oforks which group by name to help
2328 with byte locks and of_findname.
2330 * adouble (include/atalk/adouble.h): started implementing
2331 appledouble v2. mostly, i added bits to headers. v2 has wonderful
2332 bits that should make prodos support much less clunky, allow
2333 persistent dids, and allow msdos support.
2335 * finder info: added bits to directory.c and file.c describing the
2336 actual contents of finder info (from IM: Toolbox
2337 Essentials). also, set default directory view to an allowed value
2338 thanks to a suggestion from the appledouble v2 specs. that should
2339 help with read-only media.
2341 * etc/afpd/{directory.c,volume.c,afs.c,directory.h}: added
2342 DIRDID_ROOT and DIRDID_ROOT_PARENT so people know that these did's
2345 Wed Jun 17 11:54:49 1998 a sun <asun@purgatorius>
2347 * well, i'm starting a changelog as i keep forgetting what i've
2350 * locks: revamped them to be more in line with what should
2351 happen. currently, i've reverted back to flock-style locks as i'll
2352 need to stick in more code to get fcntl-style locks to work
2353 properly. specifically, i think modifying of_alloc/of_dealloc to
2354 keep track of locks, fds, and names should solve the problem with
2355 fcntl locks being process-specific and not fd specific.