]> arthur.barton.de Git - netatalk.git/blob - NEWS
more support for sigint in dbd -re
[netatalk.git] / NEWS
1 Changes in 2.1.4
2 ================
3
4 * FIX: afpd: Downstream fix for FreeBSD PR 148022
5 * FIX: afpd: Fixes for bugs 3074077 and 3074078
6 * FIX: afpd: Better handling of symlinks in combination with ACLs and EAs.
7        Fixes bug 3074076.
8 * FIX: dbd: Adding a file with the CNID from it's adouble file did
9        not work in case that CNID was alread occupied in the database
10 * FIX: macusers: add support for Solaris
11 * NEW: cnid_metad: use a PID lockfile
12 * NEW: afpd: prevent log flooding
13 * UPD: dbd: ignore ".zfs" snapshot directories
14 * UPD: dbd: support interrupting -re mode
15
16 Changes in 2.1.3
17 ================
18
19 * FIX: afpd: fix a serious error in networking IO code
20 * FIX: afpd: Solaris 10 compatibilty fix: don't use SO_SNDTIMEO, use
21        non-blocking IO and select instead for writing/sending data.
22 * UPD: Support for BerkeleyDB 5.0.
23
24 Changes in 2.1.2
25 ================
26
27 * FIX: afpd: fix for possible crash in case more then one server is
28        configured in afpd.conf.
29 * FIX: afpd: ExtendedAttributes in FreeBSD
30 * FIX: afpd: sharing home folders corrupted the per volume umask.
31 * UPD: afpd: umask for home folders is no longer taken from startup umask.
32 * UPD: afpd: dont and permissions with parent folder when creating new
33        directories on "upriv" volumes.
34 * UPD: afpd: use 'afpserver@fqdn' instead of 'afpserver/fqdn@realm'.
35        Prevents a crash in older GNU GSSAPI libs on eg. CentOS 5.x.
36  
37 Changes in 2.1.1
38 ================
39
40 * UPD: fallback to a temporary in memory tdb CNID database if the volume
41        database can't be opened now works with the default backend "dbd" too.
42 * FIX: afpd: afp_ldap.conf was missing from tarball. This only effected
43        [Open]Solaris.
44 * FIX: afpd: Check if options->server is set in set_signature, preventing
45        SIGSEGV.
46 * FIX: afpd: server signature wasn't initialized in some cases
47 * FIX: DESTDIR support: DESTDIR was expanded twice
48 * FIX: Fix for compilation error if header files of an older Netatalk
49        version are installed.
50
51 Changes in 2.1-release
52 ======================
53
54 * NEW: afpd: new volume option "volsizelimit" for limitting reported volume
55        size. Useful for limitting TM backup size.
56 * UPD: dbd: -c option for rebuilding volumes which prevents the creation
57        of .AppleDouble stuff, only removes orphaned files.
58
59 Changes in 2.1-beta2
60 ====================
61 * NEW: afpd: static generated AFP signature stored in afp_signature.conf,
62        cf man 5 afp_signature.conf
63 * NEW: afpd: clustering support: new per volume option "cnidserver".
64 * UPD: afpd: set volume defaults options "upriv" and "usedots" in the
65        volume config file AppleVolumes.default. This will only affect
66        new installations, but not upgrades.
67 * FIX: afpd: prevent security attack guessing valid server accounts. afpd
68        now returns error -5023 for unknown users, as does AppleFileServer.
69
70 Changes in 2.1-beta1
71 ====================
72
73 * NEW: afpd: AFP 3.2 support
74 * NEW: afpd: Extended Attributes support using native attributes or
75        using files inside .AppleDouble directories.
76 * NEW: afpd: ACL support with ZFS
77 * NEW: cnid_metad: options -l and -f to configure logging
78 * NEW: IPv6 support
79 * NEW: AppleDouble compatible UNIX files utility suite `ad ...`.
80        With 2.1 only `ad ls`.
81 * NEW: CNID database maintanance utility dbd
82 * NEW: support BerkeleyDB upgrade. Starting with the next release
83        after 2.1 in case of BerkeleyDB library updates, Netatalk
84        will be able to upgrade the CNID databases.
85 * NEW: afpd: store and read CNIDs to/from AppleDouble files by default.
86        This is used as a cache and as a backup in case the database
87        is deleted or corrupted. It can be disabled with a new volume
88        option "nocnidcache".
89 * NEW: afpd: sending SIGINT to a child afpd process enables debug logging
90        to /tmp/afpd.PID.XXXXXX.
91 * NEW: configure args to download and install a "private" Webmin instance
92        including only basic Webmin modules plus our netatalk.wbm.
93 * NEW: fallback to a temporary in memory tdb CNID database if the volume
94        database can't be opened.
95 * NEW: support for Unicode characters in the range above U+010000 using
96        internal surrogate pairs
97 * NEW: apple_dump: utility to dump AppleSingle and AppleDouble files
98 * NEW: afpldaptest: utility to check afp_ldap.conf.
99 * UPD: atalkd and papd are now disabled by default. AppleTalk is legacy.
100 * UPD: slp advertisement is now disabled by default. server option -slp
101        SRVLOC is legacy.
102 * UPD: cdb/dbd CNID backend requires BerkeleyDB >= 4.6
103 * UPD: afpd: default CNID backend is "dbd"
104 * UPD: afpd: try to install PAM config that pulls in system|common auth
105 * UPD: afpd: symlink handling: never followed server side, client resolves
106        them, so it's safe to use them now.
107 * UPD: afpd: Comment out all extension->type/creator mappings in
108        AppleVolumes.system. They're unmaintained, possibly wrong and
109        do not fit for OS X.
110 * FIX: rewritten logger
111 * FIX: afpd: UNIX permissions handling
112 * FIX: cnid_dbd: always use BerkeleyDB transactions
113 * FIX: initscripts installation now correctly uses autoconf paths,
114        ie they're installed to --sysconfdir.
115 * FIX: UTF-8 volume name length
116 * FIX: atalkd: workaround for broken Linux 2.6 AT kernel module:
117        Linux 2.6 sends broadcast queries to the first available socket
118        which is in our case the last configured one. atalkd now tries to
119        find the right one.
120        Note: now a misconfigured or plugged router can broadcast a wrong route !
121 * REM: afpd: removed CNID backends "db3", "hash" and "mtab"
122 * REM: cnid_maint: use dbd
123 * REM: cleanappledouble.pl: use dbd
124 * REM: nu: use `macusers` instead
125
126 Changes in 2.0.5
127 ================
128
129 * NEW: afpd: Time Machine support with new volume option "tm".
130 * FIX: papd: Remove variable expansion for BSD printers. Fixes CVE-2008-5718.
131 * FIX: afpd: .AppleDxxx folders were user accessible if option 'usedots'
132        was set 
133 * FIX: afpd: vetoed files/dirs where still accessible
134 * FIX: afpd: cnid_resolve: don't return '..' as a valid name.
135 * FIX: uniconv: -d option wasn't working
136
137 Changes in 2.0.4
138 ================
139
140 * REM: remove timeout 
141 * NEW: afpd: DHX2 uams using GNU libgcrypt.
142 * NEW: afpd: volume options 'illegalseq', 'perm' and 'invisibledots'
143        'ilegalseq'  encode illegal sequence in filename asis, ex "\217-", which is not 
144        a valid SHIFT-JIS char, is encoded  as U\217 -.
145        'perm' value OR with the client requested permissions. (help with OSX 10.5
146        strange permissions).
147        Make dot files visible by default with 'usedots', use 'invisibledots' 
148        for keeping the old behavior, ie for OS9 (OSX hide dot files on its
149        own).
150 * NEW: afpd: volume options allow_hosts/denied hosts
151 * NEW: afpd: volume options dperm/fperm default directory and file
152        permissions or with server requests.
153 * NEW: afpd: afpd.conf, allow line continuation with \ 
154 * NEW: afpd: AppleVolumes.default allow line continuation with \
155 * NEW: afpd: Mac greek encoding.
156 * NEW: afpd: CJK encoding.
157 * UPD: afpd: Default UAMs: DHX + DHX2
158 * FIX: afpd: return the right error in createfile and copyfile if the disk
159        is full.
160 * FIX: afpd: resolveid return the same error code than OSX if it's a directory
161 * FIX: afpd: server name check, test for the whole loopback subnet 
162        not only 127.0.0.1.
163 * UPD: afpd: limit comments size to 128 bytes, (workaround for Adobe CS2 bug).
164 * UPD: afpd: no more daemon icon.
165 * UPD: usedots, return an invalide name only for .Applexxx files used by netatalk not
166        all files starting with .apple.
167 * UPD: cnid: increase the number of cnid_dbd slots to 512.
168 * FIX: cnid: dbd detach the daemon from the control terminal.
169 * UPD: cnid: never ending Berkeley API changes...
170 * UPD: cnid: dbd add a timeout when reading data from afpd client.
171 * UPD: cnid: Don't wait five second after the first error when speaking to the dbd
172        backend.
173 * FIX: papd: vars use % not $
174 * FIX: papd: quote chars in popen variables expansion. security fix.
175 * FIX: papd: papd -d didn't write to stderr.
176 * FIX: papd: ps comments don't always use ()
177 * FIX: many compilation errors (solaris, AFS, Tru64, xfs quota...).
178
179 Changes in 2.0.3
180 ================
181
182 * NEW: afpd: add a cachecnid option that controls if afpd should 
183        use the IDs stored in the AD2 files as cache. Defaults
184        to off.
185 * UPD: afpd: deal with more than 32 groups.
186 * FIX: afpd: several catsearch fixes, based on patch from
187        TSUBAKIMOTO Hiroya.
188 * FIX: afpd: fix a race when a client very quickly reconnects and 
189        tries to kill its old session.
190 * FIX: afpd: OSX style symlink caused problems with Panther clients.
191 * FIX: afpd: old files with default type didn't show the right icon
192        in finder, from Shlomi Yaakobovich, slightly modified.
193 * FIX: cnid_check: disable cnid_check if CNID db was configured with
194        transactions and really bail out after the first error.
195 * FIX: admin-group configure option was broken.
196 * FIX: several problems with IDs cached in AD2 files.
197 * FIX: Ignore BIDI in UTF8 hints from OSX.
198 * FIX: Lots of gcc warning fixes.
199 * FIX: small configure script changes.
200
201
202 Changes in 2.0.2
203 ================
204
205 * NEW: cnid: Add an indexes check and rebuild, optional for dbd 
206        (parameter check default no), standalone program cnid_index for
207        cdb.
208 * UPD: Enhanced afpd's -v command line switch and added -V for more 
209        verbose information
210 * UPD: uams_gss: build the principal used by uams_gss.so from afpd's
211        configuration, don't use GSS_C_NT_HOSTBASED_SERVICE
212 * UPD: cnid_dbd: add process id in syslog and small clean up
213 * REM: remove netatalkshorternamelinks.pl cf. SF bug [ 1061396 ]
214        netatalkshorternamelinks.pl broken
215 * FIX: afpd: check for DenyRead on FPCopyFile
216 * FIX: afpd: add missing flush for AD2 Metadata on FPCopyFile, SF bug 
217        [ 1055691 ] Word 98 OS 9 Saving an existing file
218 * FIX: afpd: Deal with AFP3 connection and type 2 (non-UTF8) names.
219        reported by Gair Heaton, HI RESOLUTION SYSTEMS
220 * FIX: afpd: Broken 'crlf' option
221 * FIX: afpd: fix SF bug [ 1079622 ] afpd/dhx memory bug, 
222        by Ralf Schuchardt
223 * FIX: afpd: Return an error if we cannot get the db stamp in 
224        afp_openvol.
225 * FIX: afpd: Fix slp registration with Solaris9 slpd, from
226        hat at fa2.so-net.ne.jp
227         
228
229 Changes in 2.0.1
230 ================
231
232 * NEW: --enable-debian configure option. Will install /etc/init.d/atalk
233        to get not in conflict with standard debian /etc/init.d/netatalk.
234        Reads netatalk.conf from $ETCDIR and not from /etc/default/
235 * UPD: Disable logger code by default. Log to syslog instead
236 * UPD: changed netatalk.conf default settings to prevent problems with
237        AppleTalk zone names containing spaces
238 * FIX: insecure tempfile handling bug in etc2ps.sh,
239        found by Trustix, CAN-2004-0974.
240 * REM: remove add_netatalk_printer and netatalk.template from stable 
241        branch until fixed. (possible symlink vulnerabilities)
242 * FIX: afpd: set hasBeenInited in default finder info. This bug caused 
243        endless finder refreshes with OS9 finder if the noadouble option 
244        was used. From TSUBAKIMOTO Hiroya.
245 * FIX: afpd: fix a bug in default CREATOR/TYPE handling. Due to this bug 
246        the type/creator mappings in AppleVolumes.system were ignored, 
247        causing problems i.e. with OS9 clients.
248 * FIX: AppleVolumes.system: By default don't define a CREATOR/TYPE for a
249        file of unknown type.
250 * FIX: fix two Tru64 UNIX compilation errors, 
251        from Burkhard Schmidt bs AT cpfs.mpg.de
252 * FIX: afpd: FPMapId wasn't using UTF8 for groups if requested by client.       
253
254 Changes in 2.0.0
255 ================
256
257 * UPD: afpd: add an error message if -ipaddr parameter cannot be parsed
258 * UPD: updated documentation
259 * FIX: afpd: fix a file descriptor and memory leak with OSX ._ resource fork
260 * FIX: afpd: Prevent overwriting a file by renaming a file in the same 
261        directory to the same name. Won't work with OSX, the dest file gets 
262        deleted by OSX first.
263 * FIX: sometimes '0' was used instead of 0 for creator/type
264 * FIX: removed setpgrp check from configure, we don't use it anymore and
265        it doesn't work with cross compile.
266 * FIX: fix for Solaris "make maintainer-clean", from Alexander Barton
267 * FIX: fix username matching bug in afppasswd. from kanai at nadmin dot org
268 * FIX: reworked username check a little. Depending on the UAM, the wrong
269        username _could_ have been selected.
270
271 Changes in 2.0-rc2
272 ==================
273
274 * UPD: use 0 0 for default creator/type rather than UNIX TEXT, from
275        Shlomi Yaakobovich.
276 * UPD: updated documentation
277 * UPD: change machine type from Macintosh to Netatalk in status reply
278 * FIX: afpd: CopyFile only create a resource fork for destination if source
279        has one.
280 * FIX: afpd: mangling: for utf8 --> max filename length is 255 bytes, else 31.
281 * FIX: cnid_dbd: fix a signed/unsigned, 16/32 bits mismatch. from Burkhard
282        Schmidt, bs at cpfs.mpg.de.
283 * FIX: afpd: After ad_setid don't flush resource fork if it has not been
284        modified.
285 * FIX: NEWS: Fixed ancient NEWS entries. Removed umlauts
286 * FIX: fix macname cache, SF bug 1021642
287 * FIX: revert Makefile change from 2.0-rc1. We have to include BDB_CFLAGS
288        after CFLAGS
289
290 Changes in 2.0-rc1
291 ==================
292
293 * NEW: new manual page for asip-status.pl
294 * UPD: updated documentation
295 * UPD: uams: link uam_dhx_passwd.so to lcrypt before lcrypto. might help with
296        MD5 passwords
297 * UPD: Improved BerkeleyDB detection
298 * UPD: sys/solaris/Makefile.in: enable 'make check', from Alexander Barton
299 * UPD: tcp wrappers detection should work on OpenBSD as well now
300 * UPD: macbin: increase the maximum size of macbinary forks, as suggested by 
301        Sourceforge bug ID 829221
302 * UPD: ASP: rework getstatus. use several ASP packets if the client allows
303        it, otherwise just send as much as we can
304 * FIX: FreeBSD 5 build, from Alex Barton (alex at barton.de)
305 * FIX: OSX 10.3 build
306 * FIX: papd: workaround a problem with PJL before Postscript
307 * FIX: afpd: make sure we only disconnect on old session if the users match
308 * FIX: apfd: Quark6 mangled long filenames should work better now
309 * FIX: enhance ADv1 to ADv2 conversion. Fixed a SIGSEGV reported by Mark Baker
310 * FIX: better detection of invalid resource forks
311 * FIX: fix some linking problems on OpenBSD
312 * FIX: afpd: catsearch.c, filedir.c: fix bogus casts, from Olaf Hering 
313        (olh at suse.de)
314 * FIX: afpd: don't try to create special folders and .volinfo on read-only
315        volumes
316 * FIX: iconv/unicode enhancements. fixed a sigsegv on conversion error
317 * FIX: configure.in: fix a typo, reported by Joerg Rossdeutscher
318 * FIX: uniconv: enhanced uniconv behaviour
319 * FIX: fixed some Solaris compilation problems
320 * FIX: papd/Makefile.am: add a missing $DESTDIR, from Vlad Agranovsky
321 * FIX: afpd: quota.c: remove a c99 declaration, from Yann Rouillard
322 * FIX: configure.in: Solaris/gcc 3.0 fix, from Yann Rouillard
323 * FIX: afpd: fix a SIGSEGV when sharing home dirs without any options in 
324        AppleVolumes.
325 * FIX: numerous small bugfixes
326
327 Changes in 2.0-beta2
328 ====================
329
330 * NEW: atalkd, papd and npb tools now support nbpnames with extended
331        characters
332 * NEW: integrated CUPS support for papd
333 * NEW: optionally advertise SSH tunneling capabilties
334 * NEW: automatic logfile removal for cnid_metad
335 * NEW: asip-status.pl has been added to netatalk
336 * UPD: updated documentation
337 * UPD: we now require Berkeley DB >= 4.1
338 * UPD: 64bit Linux fixes from Stew Benedict, Mandrakesoft
339 * UPD: remove --enable-sendfile
340 * UPD: more verbose error messages
341 * FIX: better handling for resource forks without read access
342 * FIX: Tru64 build, by Burkhard Schmidt
343 * FIX: MIT Kerberos detection
344 * FIX: varios *BSD compile problems
345 * FIX: compile problem with libiconv, reported by Joe Marcus Clarke
346 * FIX: adv1tov2: make it work with the new structure
347 * FIX: afpd: filenames longer than 127 bytes were not enumerated correctly,
348        reported by Thies C. Arntzen
349 * FIX: afpd: return IP before FQDN in status reply.
350 * FIX: afpd: Mac chooser could crash on a codepage conversion error
351 * FIX: afpd: KerberosV auth with Panther clients, make long AD tickets work,
352        reported by Andrew Smith
353 * FIX: atalkd: could send invalid NBPLKUP replies, e.g with more than 15
354        printers. Reported by Almacha
355 * FIX: papd: fix papd.conf parsing problems with consecutive ':' and missing 
356        newline. Reported by Craig White.
357 * FIX: megatron: make megatron work with UTF-8 volumes
358 * FIX: timeout: running timeout with commands which accept arguments, 
359        from Yuval Yeret.
360 * FIX: uniconv: fix a SEGFAULT, reported by Matthew Geier
361 * FIX: pam detection: PAM_C/LDFLAGS were always empty, from Alexander Barton
362 * FIX: numerous small bugfixes.
363
364 Changes in 2.0-beta1
365 ====================
366
367 * NEW: OSX style adouble scheme
368 * NEW: japanese SHIFT_JIS codepage (iconv supplied)
369 * NEW: Solaris kernel module build integrated with configure
370 * NEW: Gentoo start scripts
371 * NEW: cnid_dbd doesn't use transactions by default
372 * FIX: afpd: the volume casefold option was broken
373 * FIX: afpd: update AD2 headers and keep owner on file exchange
374 * FIX: Solaris 9 and FreeBSD 4.9/5.2 compilation
375 * FIX: free space reported with groups quotas on Linux
376 * FIX: OS9/OS X didn't update free space
377 * FIX: finder crash if folder opened got deleted by another process
378 * FIX: randnum UAM wasn't AFP3 ready
379 * FIX: numerous small bugfixes.
380
381 Changes in 2.0-alpha2
382 =====================
383
384 * NEW: uniconv tool for converting volume encoding.
385 * NEW: afpd: Make sure getstatus doesn't return loopback address as server IP.
386 * NEW: afpd: Specify USEDOTS with MSWINDOWS implicitely.
387 * NEW: afpd: SRVLOC register with IP address instead of hostname by default,
388        if -fqdn is specified register with FQDN.  Added extended character 
389        support for SLP, non ASCII characters are escaped Added ZONE to registration.
390 * NEW: atalkd: Make atalkd set interfaces to ALLMULTI on linux by default.
391 * NEW: cnid_metad: Use DB_PRIVATE attribute for dbd backend without transaction.
392 * FIX: afpd: Partial workaround for an OSX client deadlock.
393 * FIX: afpd: Reenumerate folder if db is out of sync in resolveID.
394 * FIX: afpd: Don't modify modification date in copyfile.
395 * FIX: afpd: Variable $v substitution: always use name defined in config files.
396 * FIX: libatalk: Speed optimisation for byte locking was broken on resource fork.
397 * FIX: Solaris 9 compilation.
398 * FIX: Tru64 compilation fixes.
399 * FIX: AFS compilation fixes.
400 * FIX: strncpy bugfix.
401 * FIX: configure, man pages update and small bugfixes.
402
403 Changes in 2.0-alpha1
404 =====================
405
406 * NEW: afpd: We now support AFP 3.x, which features long filenames and 
407        large file support
408 * NEW: CNID handling completely reworked. We now use per Volume configurable
409        CNID backends.
410 * NEW: Two new daemons, cnid_metad and cnid_dbd to implement the dbd CNID backend.
411        Using Berkeley DB transactions with the CNID database should be safe now.
412 * NEW: The on disk format of the CNID database has changed. We now support 8 byte
413        device and inode numbers and an additinal type field that should make 
414        detection of file/directory changes outside of afpd more robust. 
415        Changed from HASH to BTREE access which speeds things up in certain cases 
416        and reduces database file size.
417 * NEW: Long file name mangling is now implemented using the CNID ID, so no database is 
418        required to map names to mangled names. This is the same method Mac OS X uses. 
419 * NEW: New format (version 2) for Metadata in AppleDouble files. We record device and  
420        inode of the underlying file as well as the CNID. This can be used for recovery
421        and speeds up access to the CNID.
422 * NEW: The old NLS codepage system has been removed. It was replaced by an iconv 
423        based conversion system, which provides much more flexibility.
424 * NEW: You can safely use extended characters in volume names and for SIGUSR2 messaging.
425 * NEW: The default volume encoding is UTF-8.
426 * NEW: All documentation is now generated using DocBook. New or completely reworked 
427        sections about installing, setting up and upgrading Netatalk replace various 
428        README files in the doc directory.
429 * FIX: Protect afpd better against unexpected signals during updates of the CNID
430        database with the cdb backend. This makes database corruption less likely.   
431 * FIX: All manpages have been reviewed and should now be up to date.
432 * FIX: Tons of bug fixes since 1.6.4. Please consults the CVS change log for details.
433
434 Changes in 1.6.4
435 ================
436
437 * NEW: afpd: Using the mswindows option now implicitly specifies usedots.
438   [Sam Noble]
439 * UPD: afpd.8: Updated the option documentation.
440   [Thomas Kaiser, Sebastian Rittau]
441 * FIX: configure: Removed broken --with-flock-locks option. [Bjoern Fernhomberg]
442 * FIX: libatalk: Do not log network probe (OSX 10.3). [Didier Gautheron]
443 * FIX: libatalk: Deadlock in signal handlers. [Didier]
444 * FIX: libatalk: Compilation with Linux kernel 2.6 fixed. [Sebastian, Bjoern]
445 * FIX: afpd: Solaris compile issues. [Bjoern]
446 * FIX: afpd: If connection broke in dsi_tickle the child did never die. [Bjoern]
447 * FIX: afpd: Catsearch, fixes a possible segmentation fault. [Bjoern]
448 * FIX: afpd: Compilation issues. [Olaf Hering, Sebastian]
449 * FIX: cnid: Fix compile problems on Tru64. [Burkhard Schmidt]
450 * FIX: megatron: Fixed an uninitialized variable. [Olaf]
451 * FIX: installation: Don't overwrite PAM file if --enable-overwrite configure
452        option is not set. [Sam, Ryan Cleary]
453 * FIX: installation: Fixed BSD installation. [Toru TAKAMIZU]
454 * FIX: docs: Removed ssl-dir/ssl-dirs confusion from doc/INSTALL. [Bjoern]
455
456 Changes in 1.6.3
457 ================
458
459 * UPD: afpd: Infrastructural support for an upcoming Kerberos 5 UAM.
460        [Sam Noble]
461 * UPD: uams_dhx_passwd: Better random seed in Tru64. [Burkhard Schmidt]
462 * FIX: afpd: Bug in AFP connection negotiation stage. [Sam]
463 * FIX: afpd: Catsearch, when Mac and unix name differ, search on attributes.
464 * FIX: afpd: Files could be opened for writing on read-only filesystems.
465 * FIX: afpd: Debugging using SIGUSR1 was broken. [Stefan Muenkner]
466 * FIX: afpd: Segfault after login. [Robby Griffin, Sean Bolton]
467 * FIX: psf: Correct path to etc2ps.sh.
468 * FIX: shell_utils: Don't distribute generated files.
469 * FIX: aecho: -A option didn't work. [Chris Shiels]
470 * FIX: configure: Berkeley DB path detection could be wrong. [Stefan]
471 * FIX: Automake build fixes.
472
473 Changes in 1.6.2
474 ================
475
476 * FIX: atalkd: Fixes for reading long configuration file lines. [Dan Wilga]
477 * FIX: afpd: CNID id allocation in a multiuser environment.
478 * FIX: papd: Fix PSSP support when PAM is enabled.
479 * FIX: macusers: Can now cope with IP addresses as well as host names.
480 * FIX: etc2ps.sh: Install correctly.
481
482 Changes in 1.6.1
483 ================
484
485 * UPD: Improve --enable-fhs. [Olaf Hering]
486 * UPD: Add BDB 4.1.x support.
487 * UPD: Add more documentation on CNID, as well as list which versions
488        of Berkeley DB are supported.
489 * FIX: Codepage file maccode.koi8-r is now correctly cleaned.
490 * FIX: Fix init script location on SuSE. [Olaf]
491 * FIX: Build fixes. [Olaf, Steven N. Hirsch]
492 * FIX: Various bugs when a user doesn't have access permission to a folder.
493        (Fixes an OSX kernel panic.)
494 * FIX: CNID, folders' DID handling with concurrent access or symlinks.
495        (Fixes an endless loop in afpd.)
496
497 Changes in 1.6.0
498 ================
499
500 * FIX: pap looks at the STDOUT file descriptor to see if it's connected to
501        a tty, instead of STDIN.
502
503 Changes in 1.6pre2
504 ==================
505
506 * UPD: Removed --with-catsearch option from configure and enable FPCatSearch
507        by default.
508 * UPD: The dbpath argument does now support variable substitution.
509 * FIX: Build fix for non-GNU-C compilers in libatalk/util/logger.c.
510 * FIX: Two directories with the same name but different case confused the
511        Mac Finder.
512 * FIX: The ROOT_PARENT directory could get invalidated.
513
514 Changes in 1.6pre1
515 ====================
516
517 * NEW: Long file name mangling support.
518 * NEW: Improved log file support.
519 * NEW: Server-side find capability ("FPCatSearch")
520 * NEW: Concurrent datastore (CDB) is now the default CNID datastore.  This
521        should be heavily tested in a multiuser environment.
522 * NEW: Variable substitution support has been added for the dbpath AppleVolume
523        option.
524 * UPD: CNID DID handling is now enabled by default.
525 * FIX: Various bug and build fixes as well as code cleanups.
526
527 Changes in 1.5.5
528 ================
529
530 * NEW: Allow afpd debugging to be enabled by sending the afpd process
531        a SIGUSR1.
532 * NEW: Allow SLP to be disabled per afpd process by adding a new -noslp flag
533        to afpd.conf.
534 * FIX: Use server name (if not NULL) for the SLP URL.
535 * FIX: papd: buffer overflow during config file read (Olaf Hering)
536
537 Changes in 1.5.4
538 ================
539
540 * FIX: File open read only and then read write (aka pb with Illustrator).
541 * FIX: Problems with unexpected EOF when reading files on a ddp connection
542        Photoshop, old finder.
543 * FIX: --with-nls-dir option does now work
544
545 Changes in 1.5.3
546 ================
547
548 * UPD: Extend the --disable-shell-check functionality to ignore users
549        with _no_ shell.  Also, send a log message if a user is refused login
550        based on the fact that they have no shell.
551 * UPD: Autoconf updates.
552 * UPD: Tru64 afpd authentication updates.
553 * UPD: As always: lots of minor code cleanups.
554 * FIX: Problems with Photoshop trying to open image files has been
555        corrected.
556 * FIX: Preserve special permission bits when creating or modifying
557        directories.
558 * FIX: afp_deleteid() now deletes the specified file and not the parent
559        directory.
560 * FIX: papd does now announce that it supports binary data to its clients.
561 * FIX: NetBSD ELF support.
562 * FIX: acleandir.rc is now installed in the bin directory.
563 * FIX: megatron does now compile even if compiled with -DDEBUG.
564 * FIX: Clean up some syslog messages.
565
566 Changes in 1.5.2
567 ================
568
569 * NEW: NetBSD support contributed by David Rankin and NetBSD contributors.
570        This includes a new configure option --enable-netbsd.
571 * NEW: Add the -client_polling afpd.conf flag to allow for clients to poll
572        the server every 10 seconds for open window updates.  Currently
573        this is the only way to get asynchronous directory updates.
574 * UPD: Use separate macro for AFS configure check.
575 * UPD: Some Perl scripts are now (partially) auto-generated. This improves
576        out-of-the-box usage of Netatalk.
577 * UPD: Solaris Kernel Makefile is now auto-generated. This fixes some path
578        issues, but isn't perfect, yet. Added some Solaris compatibility
579        fixes to the Kernel sources, too.
580 * UPD: CNID DB code sync'd with the current CVS version.  NOTE: Using this
581        code requires you to delete _all_ existing .AppleDB directories in
582        order to avoid database corruption!
583 * FIX: The file AppleVolumes.system contained wrong line breaks so that
584        not all file types were properly recognized.
585 * FIX: AFS compilation would fail due to a misnamed variable.
586 * FIX: SLP configure check was wrong so SLP did not compile.
587 * FIX: Fix the way quotas are handled under certain situations.
588 * FIX: Do not enable debugging code if debugging option is not set.
589 * FIX: Some problems with wrongly assigned DIDs were fixed.
590 * FIX: Various bug fixes and code cleanups.
591
592 Changes in 1.5.1
593 ================
594
595 * NEW: Added a program called cnid_didname_verify that can be used to
596        verify the consistency of the CNID database.
597 * NEW: New afpd option: -timeout. Warning: This still doesn't do what it's
598        supposed to!
599 * UPD: Code cleanups and compatibility fixes to macusers.
600 * UPD: AppleVolumes.system was cleaned up.
601 * FIX: Really fix Tru64 compilation (see last entry).
602 * FIX: Hand correct error value back to AFP client when deleting files or
603        directories fails.
604 * FIX: Leading or trailing spaces are now forbidden on volumes that have
605        the AFPVOL_MSWINDOWS flag set.
606 * FIX: Minor code cleanups and warning fixes.
607 * FIX: Make quota support work on FreeBSD.
608
609 Changes in 1.5.0
610 ================
611
612 * FIX: Compilation on Tru64 systems was broken, since libtool's acinclude.m4
613        file on the packagers system did not contain the necessary patch.
614 * FIX: On some systems, atalkd refuses to start, since it couldn't detect
615        any interfaces. This was caused by an overzealous validity check.
616
617 Changes in 1.5rc2
618 =================
619
620 * FIX: contrib/shell_utils/lp2pap.sh was erased when "make clean" was called.
621        Now we distribute lp2pap.sh.tmpl instead, and lp2pap.sh is automatically
622        generated during package build.
623 * FIX: Some platforms (notably Tru64) don't have the snprintf() call, which
624        was used in etc/afp/afp_config.c. This call was replaced by sprintf()
625        and prior bounds checking.
626
627 Changes from the 1.4b1 release:
628 ===============================
629
630 *   Fixed the maximum free/total volume size in afpd.
631
632 *   Made ~ the default volume in afpd.
633
634 *   Fixed pid file handling and changed setpgrp() to setpgid() in afpd,
635     papd, and atalkd.
636
637 *   Added code to afpd to set the Unix file time stamps with utime().
638
639 *   Fixed a bug in papd's printcap code which limited it to 15 or so
640     printers.
641
642 *   Fixed papd's handling of piped printers.
643
644 *   Fixed papd's handling of bad job names.
645
646 *   Fixed atalkd to send NBP LKUP packets from NBP port.
647
648 *   Added "sync;sync;sync" to Solaris kinstall to help with streams
649     file corruption.
650
651 *   Added nlocalrts to streams ddp.conf.  Thanks Thomas Tornblom.
652
653 *   Fixed signed extension infinite loop in Solaris module.
654
655 *   Moved all the config files to .../config.
656
657 Changes from the 1.3.3 release:
658 ===============================
659
660 *   Added code from Sun Microsystems, Inc (OPCOM) for Solaris support.
661     See COPYRIGHT.
662
663 *   Added support for FreeBSD, mostly changes by Mark Dawson and Julian
664     Elischer.
665
666 *   All sorts of other stuff.
667
668 Changes from the 1.3.1 release:
669 ===============================
670
671 *   Added options to psf's filter names to support accounting on HPs.
672     !!! NOTE:  The location of the filters has changed, see the man
673     page for where.
674
675 *   Added code from Alan Cox to support Linux.
676
677 *   Rewrote papd.  Now handles dropped connections better.
678     Configuration has been modernized.  !!! NOTE: The format of the
679     configuration file has changed, but NOT THE NAME.
680
681 *   Added Kerberos support to papd.
682
683 *   atalkd now removes routes on a SIGTERM.  Still can't just restart
684     it, but it's closer.
685
686 *   Changed atalkd and the kernel driver to remove a hack added to
687     support sending to 0.255.  Now the kernel will allow multiple open
688     sockets with the same port, so long as the addess associated with
689     the port is different.  atalkd now opens a socket for each port on
690     each interface.
691
692 *   atalkd now rewrites its configuration file.  If no configuration
693     file is given, one will be generated.  Permissions on the new
694     configuration file will be inherited from the old one.  If there is
695     no old one, permissions default to 644.  Won't rewrite the file if
696     the owner doesn't have write permission.
697
698 *   Removed support for the "AFS Kerberos UAM", in favor of the
699     "AuthMan UAM".  Kerberos support should now be much more
700     straight-forward.
701
702 *   Fixed a bug in afpd which would cause incorrect group calculations
703     on ultrix machines.
704
705 *   Fixed a bug in afpd which causes SimpleText and some other
706     applications to silently fail to write.  There's also a bug in
707     MacOS, but we can't fix that.
708
709 *   Fixed a bad interaction with afpd and AFS which would cause file
710     writes to not propogate between AFS clients.
711
712 *   !!! CHANGED the name(s) of afpd's config files.  The new files are
713     AppleVolumes.system and AppleVolumes.default.  If AppleVolumes.system
714     exists, it is always read, AppleVolumes.default is only read if the
715     user has no AppleVolumes file.  Included a flag "-u" to indicate
716     which file has precedence.  "-u" user wins, otherwise ".system"
717     wins.
718
719 *   Rewrote the AppleVolumes parsing code.  Now works.
720
721 *   Added a filename extension mapping to afpd.  User always takes
722     precedence, regardless of the "-u" flag.  Code to change the type
723     of all Unix files contributed by Kee Hinckley <nazgul@utopia.com>.
724
725 *   afpd now supports both UFS and AFS volumes simultaneously.  It also
726     uses access() to attempt to calculate reasonable Mac permissions
727     for AFS directories.
728
729 *   Changed reporting of file times.  Files that are written from Unix
730     now update the Mac's idea of the files modification time.  Unix
731     mtime is now reported instead of ctime.
732
733 *   Added support for a new UAM to afpd.  This requires that client
734     Macs have MacTCP and AuthMan installed.  Should make running afpd
735     for AFS easier.
736
737 *   Removed code so that otherwise valid volumes for which the mounting
738     user has no permission will appear in the volume selection dialog
739     on the Mac gray-ed out.
740
741 *   Added code from Chris Metcalf of MIT to the AppleDouble library
742     which improves permission inheritance.
743
744 *   Added code from G. Paul Ziemba of Alantec, Inc to better report
745     errors in psf.  Also changed psf to use syslog for errors that
746     users aren't interested in.
747
748 *   Added information to psf's man page to better explain the
749     interaction between psf, pap, and lpd.
750
751 *   Make psf/pap/psa do accounting when it's turnes on in
752     /etc/printcap.
753
754 *   Changed pap's error message when there is no printer specified on
755     the command line and no .paprc is found.  Also heavily modified
756     pap's man page to reflect changes in the "new" version of pap,
757     including moving it from section 8 to section 1.
758
759 *   Fixed a byte-order bug in pap's sequence numbers.  Doubt if pap has
760     ever worked right on little endian machines!
761
762 *   Added a flag to pap to optionally close before receiving EOF from
763     the printer.  Off by default.  psf calls pap with this option on.
764
765 *   Added timeouts to the nbp library calls.  This means that processes
766     won't hang when atalkd dies during boot, thus hanging your
767     machine.
768
769 Changes from the 1.3 release:
770 =============================
771
772 *   Fixed a bug in afpd which would cause APPL mappings to contain both
773     mac and unix path names.  The fixed code will handle the old
774     (corrupted) database.
775
776 *   Fixed a *very* serious bug which would cause files to be corrupted
777     when copying to afpd.
778
779 *   Fixed a bug in afpd which would cause replies to icon writes to
780     contain the written icon.
781
782 *   Filled in the function code switch in afpd.  Previously, a hacker
783     could probably have used afpd to get unauthorized access to a
784     machine running afpd.
785
786 *   Fixed a bug in the asp portion of libatalk.a which could cause the
787     malloc()/free() database to be corrupted.
788
789 *   Fixed a bug in atalkd's zip query code.  With this bug, only the
790     first N % 255 nets get queried.  However, since nets bigger than
791     255 are usually pretty unstable, the unqueried for nets will
792     eventually get done, when N drops by one.
793
794 *   Suppressed a spurious error ("route: No such process") in atalkd.
795
796 Changes from the 1.2.1 release:
797 ===============================
798
799 *   atalkd is completely rewritten for phase 2 support.  atalkd.conf
800     from previous version will not work!
801
802 *   afpd now has better AFS support.  In particular, the configuration
803     for AFS was made much easier; a number of Kerberos-related
804     byte-ordering and time problems were found; clear-text passwords
805     were added (thanks to geeb@umich.edu).
806
807 *   afpd now handles Unix permissions much better (thanks to
808     metcalf@mit.edu).
809
810 *   There are many, many more changes, but most are small bug fixes.
811
812 Changes from the 1.2 release:
813 =============================
814
815 *   The Sun support now uses loadable kernel modules (a la VDDRV)
816     instead of binary patches. As such, it should work on any sunos
817     greater than 4.1, and is confirmed to work under 4.1.1 and 4.1.2.
818
819 *   The DEC support no longer requires source. It also runs under
820     ultrix 4.1 and 4.2. It still requires patching your kernel, but the
821     patches are limited to those files available to binary-only sites
822     -- primarily hooks for things like netatalk.
823
824 *   The etc.rc script now uses changes made to nbprgstr (see below).
825
826 *   aecho now takes machine names on the command line.
827
828 *   nbplkup now takes a command line argument specifying the number of
829     responses to accept. It also takes its defaults from the NBPLKUP
830     environment variable.
831
832 *   nbprgstr may be used to register a name at any requested port.
833
834 *   afpd now logs if an illegal shell is used during login, instead of
835     silently denying service.
836
837 *   A bug in afpd which caused position information for the directory
838     children of the root of a volume to be ignored has been fixed.
839
840 *   Several typos in afpd which would cause include files necessary to
841     ultrix to be skipped have been fixed.
842
843 *   atalkd will no long propagate routes to networks whose zone
844     it doesn't know.
845
846 *   atalkd no longer dumps core if it receives a ZIP GetMyZone request
847     from a network whose zone it doesn't know. (Since this currently
848     can only happen from off net, it's not precisely a legal request.)
849
850 *   pap and papd (optionally) no longer check the connection id in PAP
851     DATA responses. Both also maintain the function code in non-first-packet
852     PAP DATA responses.  These changes are work-arounds to deal with
853     certain AppleTalk printer cards, notably the BridgePort LocalTalk
854     card for HP LJIIISIs.
855
856 *   pap no longer sends an EOF response to each PAP SENDDATA request,
857     only the first.
858
859 *   A bug in papd which would cause it to return a random value when
860     printing the procset to a piped printer has been fixed.
861
862 *   A bug relating to NBP on reverse-endian machines has been fixed.
863
864 *   atp_rsel() from libatalk now returns a correct value even if it
865     hasn't recieved anything yet.
866
867 *   atalk_addr() from libatalk no longer accepts addresses in octal
868     format, since AppleTalk addresses can have leading zeros. Also it
869     checks that the separator character is a '.'.
870
871 *   Pseudo man pages for nbplkup, nbprgstr, and nbpunrgstr, have been
872     added.
873
874 *   The example in the psf(8) man page is now correct.
875
876 *   The man pages for changed commands have been updated.
877
878 *   The README files for various machine have been updated
879     appropriately.