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