4 The Netatalk development team is proud to announce the first release of
5 the Netatalk 3.1 release series. Early adopters are encouraged to update
8 Netatalk is a freely-available Open Source AFP fileserver.
9 A *NIX/*BSD system running Netatalk is capable of serving many Macintosh
10 clients simultaneously as an AppleShare file server (AFP).
14 * netatalk - the main server service controller
15 * afpd - the AFP file server daemin
16 * cnid_metad - the CNID database multiplexing daemon
17 * cnid_dbd - the CNID database daemon serving CNIDs for AFP volumes
18 * various supporting programs and utilities
20 Summary of major new features and enhancements in 3.1
21 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23 * AFP Spotlight Support with Gnome Tracker:
24 https://projects.gnome.org/tracker/
26 Please refer to the online manual for details about compiling Netatalk
27 with Spotlight support and how to configure:
29 http://netatalk.sourceforge.net/3.1/htmldocs/installation.html#compiling-netatalk
31 http://netatalk.sourceforge.net/3.1/htmldocs/configuration.html
33 Please make sure to read the upgrading section in the Netatalk online
34 manual before trying to upgrade your system from version 2:
36 http://netatalk.sourceforge.net/3.1/htmldocs/upgrade.html
41 Netatalk is a Free/Open Source Software project and is released under
42 the GNU General Public License (GPLv2). The full license text is available
45 http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
49 * NEW: AFP Spotlight support with Gnome Tracker
50 * NEW: New option "spotlight" (G/V)
51 * NEW: Configure option --with-tracker-pkgconfig-version
52 * NEW: Configure option --with-tracker-prefix
53 * NEW: If Spotlight is enabled, launch our own dbus instance
54 * NEW: New option "dbus daemon" (G)
55 * UPD: Add configure option --with-afpstats for overriding the
56 result of autodetecting dbus-glib presence
57 * NEW: Add recvfile support with splice() on Linux. New global options
58 "recvfile" (default: no) and "splice size" (default 64k).
59 * NEW: CNID backend "mysql" for use with a MySQL server
60 * FIX: Build fixes for the Kerberos UAM
61 * UPD: Use dedicated exit code for AFP connections that were dropped
62 by the client right after the TCP handshake
66 * FIX: charset conversion failed when copying from Mac OS 9. Bug #523.
67 * UPD: Don't force S_ISGID for directories on FreeBSD. Bug #525.
68 * NEW: Add support for ZFS ACLs on FreeBSD with libsunacl. From FR#83.
69 * FIX: Active Directory LDAP queries for ACL support with new options
70 "ldap user filter" and "ldap group filter". Bug #526.
74 * FIX: charset conversion failed when copying from Mac OS 9. Bug #523.
75 * UPD: Don't force S_ISGID for directories on FreeBSD. Bug #525.
76 * NEW: Add support for ZFS ACLs on FreeBSD with libsunacl. From FR#83.
77 * FIX: Active Directory LDAP queries for ACL support with new options
78 "ldap user filter" and "ldap group filter". Bug #526.
79 * NEW: Option "vol dbnest", when set to true, the CNID database for
80 a volume is stored in the volume root of a share in a directory
81 .AppleDB like in Netatalk 2. Defaults to false. From FR#84.
82 * FIX: Small fix in the DSI tickle handling. Bug #528.
83 * UPD: Enhance handling of connection attempts when hitting the
84 connection limit. Bug #529.
85 * FIX: Saving from Word to a folder that is a symlink to a folder on
86 another filesystem results in a crash of the afpd process and
87 the save to fail. This happens only if the option
88 "follow symlinks" is enabled. Bug #532.
89 * FIX: Disable Kerberos UAM if AFP service principal name can't be
90 evaluated. Fixes bug #531.
91 * FIX: Fix handling of large number of volumes. Bug #527.
92 * NEW: Configure option --with-tbd which can be used to disable the
93 use of the bundled tdb and use a system installed version.
97 * FIX: Fix a crash when using pam_winbind. Fixes bug #516.
98 * NEW: New global/volume option "ignored attributes"
99 * FIX: "afp listen" option failed to take IPv6 addresses. Bug #515.
100 * FIX: Fix a possible crash in set_groups. Bug #518.
101 * NEW: Send optional AFP messages for vetoed files, new option
102 "veto messages" can be used to enable sending messages.
103 Then whenever a client tries to access any file or directory
104 with a vetoed name, it will be sent an AFP message indicating
105 the name and the directory. From FR #81.
106 * NEW: New boolean volume option "delete veto files". If this option is
107 set to yes, then Netatalk will attempt to recursively delete any
108 vetoed files and directories. FR #82.
109 * UPD: systemd unit dir is /usr/lib/systemd/system .
110 * FIX: Saving files from application like MS Word may result in the file
111 loosing metadata like the Finder label. Bug #521.
115 * FIX: Opening files without metadata EA may result in an invalid
116 metadata EA. Check for malformed metadata EAs and delete them.
118 * FIX: Fix an issue with filenames containing non-ASCII characters that
119 lead to a failure setting the size of a files ressource fork.
120 This affected application like Adobe Photoshop where saving
121 files may fail. Fixes bug #511.
122 * UPD: Enhance ACL mapping, change global ACL option 'map acl' to take
123 the following options: "none", "rights" (default), "mode".
124 none = no mapping, this resembles the previous false/no setting
125 rights = map ACLs to Finder UARights, this resembles the previous
126 true/yes setting. This is the default.
127 mode = map ACLs to Finder UARights and UNIX mode
129 * FIX: Fix a possible crash in cname() where cname_mtouname calls
130 dirlookup() where the curdir is freed because the dircache
131 detected a dev/inode cache difference and evicted the object
132 from the cache. Fixes bug #498.
133 * FIX: Add missing include, fixes bug #512.
134 * FIX: Change default FinderInfo for directories to be all 0, fixes
136 * NEW: New option "afp interfaces" which allows specifying where
137 Netatalk listens for AFP connections by interface names.
142 * UPD: afpd: Increase default DSI server quantum to 1 MB
143 * UPD: bundled libevent2 is now static
144 * NEW: --with-lockfile=PATH configure option for specifying an
145 alternative path for the netatalk lockfile.
146 * UPD: systemd service file use PIDFile and ExecReload.
148 * UPD: RedHat sysvinit: rm graceful, reimplement reload, add condrestart
149 * FIX: Couldn't create folders on FreeBSD 9.1 ZFS fileystems.
151 * FIX: Fix an issue with user homes when user home directory has not the
152 same name as the username.
154 * UPD: Fix PAM config install, new default installation dir is
155 $sysconfdir/pam.d/. Add configure option --with-pam-confdir
156 to specify alternative path.
157 * NEW: AFP stats about active session via dbus IPC. Client side python
158 program `afpstats`. Requires dbus, dbus-glib any python-dbus.
159 configure option --dbus-sysconf-dir for specifying dbus
160 system security configuration files.
161 New option 'afpstats' (default: no) which determines whether
162 to enable the feature or not.
163 * NEW: configure option --with-init-dir
164 * NEW: dtrace probes, cf include/atalk/afp_dtrace.d for available
166 * UPD: Reload groups when reloading volumes. FR #71.
167 * FIX: Attempt to read read-only ._ rfork results in disconnect.
169 * FIX: File's ressource fork can't be read if metadata EA is missing.
171 * FIX: Conversion from adouble v2 to ea for directories.
173 * FIX: Error messages when mounting read-only filesystems.
175 * FIX: Permissions of ._ AppleDouble ressource fork after conversion
178 * UPD: Use FreeBSD sendfile() capability to send protocol header.
180 * UPD: Increase IO size when sendfile() is not used.
182 * FIX: Can't set Finder label on symlinked folder with "follow symlinks = yes".
184 * FIX: Setting POSIX ACLs on Linux
186 * FIX: "ad ls" segfault if requested object is not in an AFP volume.
191 * NEW: afpd: Put file extension type/creator mapping back in which had
193 * NEW: afpd: new option 'ad domain'. From FR #66.
194 * FIX: volumes and home share with symlinks in the path
195 * FIX: Copying packages to a Netatalk share could fail, bug #469
196 * FIX: Reloading volumes from config file was broken. Fixes bug #474.
197 * FIX: Fix _device-info service type registered with dns-sd API
198 * FIX: Fix pathname bug for FCE modified event.
199 * FIX: Remove length limitation of options like "valid users".
201 * FIX: Dont copy our metadata EA in copyfile(). Fixes bug #452.
202 * FIX: Fix an error where catalog search gave incomplete results.
204 * REM: Remove TimeMachine volume used size FCE event.
205 * UPD: Add quoting support to '[in]valid users' option. Fixes bug #472.
206 * FIX: Install working PAM config on Solaris 11. Fixes bug #481.
207 * FIX: Fix a race condition between dbd and the cnid_dbd daemon
208 which could result in users being disconnected from volumes
209 when dbd was scanning their volumes. Fixes bug #477.
210 * FIX: Netatalk didn't start when the last line of the config file
211 afp.conf wasn't terminated by a newline. Fixes bug #476.
212 * NEW: Add a new volumes option 'follow symlinks'. The default setting is
213 false, symlinks are not followed on the server. This is the same
214 behaviour as OS X's AFP server.
215 Setting the option to true causes afpd to follow symlinks on the
216 server. symlinks may point outside of the AFP volume, currently
217 afpd doesn't do any checks for "wide symlinks".
218 * FIX: Automatic AppleDouble conversion to EAs failing for directories.
220 * FIX: dbd failed to convert appledouble files of symlinks.
225 * NEW: afpd: Optional "ldap uuid encoding = string | ms-guid" parameter to
226 afp.conf, allowing for usage of the binary objectGUID fields from
228 * FIX: afpd: Fix a Solaris 10 SPARC sendfilev bug
229 * FIX: afpd: Fix a crash on FreeBSD
230 * FIX: afpd: Fixes open file handle refcounting bug which was reported as
231 being unable to play movies off a Netatalk AFP share.
233 * FIX: afpd: Fix a possible data corruption when reading from and writing
234 to the server simultaniously under load
235 * FIX: Fix possible alignment violations due to bad casts
236 * FIX: dbd: Fix logging
237 * FIX: apple_dump: Extended Attributes AppleDouble support for *BSD
238 * FIX: handling of '/' and ':' in volume name
239 * UPD: Install relevant includes necessary for building programs with
240 installed headers and shared lib libatalk
241 * UPD: libevent configure args to pick up installed version. Removed
242 configure arg --disable-libevent, added configure args
243 --with-libevent-header|lib.
244 * UPD: gentoo initscript: merge from portage netatalk.init,v 1.1
245 * REM: Remove --with-smbsharemodes configure option, it was an
246 empty stub not yet implemented
251 * UPD: afpd: force read only mode if cnid scheme is last
252 * REM: afpd: removed global option "icon"
253 * FIX: CNID path for user homes
258 * UPD: Solaris and friends: Replace initscript with SMF manifest
259 * FIX: Solaris and friends: resource fork handling
264 * UPD: afpd: Performance tuning of read/write AFP operations. New option
265 "afp read locks" (default: no) which disables that the server
266 applies UNIX byte range locks to regions of files in AFP read and
268 * UPD: apple_dump: Extended Attributes AppleDouble support.
269 (*BSD is not supported yet)
271 Changes in 3.0 alpha3
272 ~~~~~~~~~~~~~~~~~~~~~
274 * NEW: afpd: Per volume "login message", NetAFP bug ID #18
275 * NEW: afpd: Cross-platform locking (share modes) on Solaris and derivates
276 with Solaris CIFS/SMB server. Uses new Solaris fcntl F_SHARE share
277 reservation locking primitives. Enabled by default, set global
278 "solaris share reservations" option to false to disable it.
279 * NEW: ad: ad set subcommand for changing Mac metadata on the server
280 * UPD: unix charset is UTF8 by default
281 vol charset is same value as unix charset by default
282 * UPD: .AppleDesktop/ are stored in $localstatedir/netatalk/CNID
283 (default: /var/netatalk/CNID), databases found in AFP volumes are
285 * FIX: afpd: Server info packet was malformed resulting in broken
286 server names being displayed on clients
287 * FIX: afpd: Byte order detection. Fixes an error where Netatalk on
288 OpenIndiana returned wrong volume size information.
290 Changes in 3.0 alpha2
291 ~~~~~~~~~~~~~~~~~~~~~
293 * UPD: afpd: Store '.' as is and '/' as ':' on the server, don't
294 CAP hexencode as "2e" and "2f" respectively
295 * UPD: afdp: Automatic name conversion, renaming files and directories
296 containing CAP sequences to their not enscaped forms
297 * UPD: afpd: Correct handling of user homes and users without homes
298 * UPD: afpd: Perform complete automatic adouble:v2 to adouble:ea conversion
299 as root. Previously only unlinking the adouble:v2 file was done as root
300 * UPD: dbd: -C option removes CAP encoding
301 * UPD: Add graceful option to RedHat init script
302 * UPD: Add --disable-bundled-libevent configure options When set to yes,
303 we rely on a properly installed version on libevent CPPFLAGS and LDFLAGS
304 should be set properly to pick that up
305 * UPD: Run ldconfig on Linux at the end of make install
306 * FIX: afpd: ad cp on appledouble = ea volumes
307 * FIX: dbd: ignore ._ appledouble files
308 * REM: Volumes options "use dots" and "hex encoding"
310 Changes in 3.0 alpha1
311 ~~~~~~~~~~~~~~~~~~~~~
313 * NEW: Central configuration file afp.conf which replaces all previous files
314 * NEW: netatalk: service controller starting and restarting afpd and cnid_metad
316 * NEW: afpd: Extended Attributes AppleDouble backend (default)
317 * UPD: CNID databases are stored in $localstatedir/netatalk/CNID
318 (default: /var/netatalk/CNID), databases found in AFP volumes are
320 * UPD: Start scripts and service manifests have been changed to only start
321 the new netatalk service controller process
322 * UPD: afpd: UNIX privileges and use dots enabled by default
323 * UPD: afpd: Support for arbitrary AFP volumes using variable expansion has been
325 * UPD: afpd: afp_voluuid.conf and afp_signature.conf location has been
326 changed to $localstatedir/netatalk/ (default: /var/netatalk/)
327 * UPD: afpd: default server messages dir changed to $localstatedir/netatalk/msg/
328 * UPD: dbd: new option -C for conversion from AppleDouble v2 to ea
329 * REM: AppleTalk support has been removed
330 * REM: afpd: SLP and AFP proxy support have been removed
331 * REM: afpd: legacy file extension to type/creator mapping has been removed
332 * REM: afpd: AppleDouble backends v1, osx and sfm have been removed
338 As of Netatalk 3.0 the following operating systems are supported:
344 * Solaris and derivates
346 Netatalk may compile and run on other operating systems as well, but
347 it is not well-tested on those. We welcome patches and suggestions
348 for enhancing the portability of Netatalk as well as success and failure
349 stories. Please write to netatalk-devel@lists.sourceforge.net.
354 Netatalk tar-balls can be found at:
356 http://sourceforge.net/project/showfiles.php?group_id=8642
358 Netatalk is also available via anonymous git. See the SourceForge project
359 site for anonymous git instructions.
364 For more information about Netatalk, see its web page at:
366 http://netatalk.sourceforge.net/
368 The project is hosted at SourceForge. The SourceForge project page is
371 http://sourceforge.net/projects/netatalk/
373 The Netatalk development team can be reached via the mailing list
374 netatalk-devel@lists.sourceforge.net. For subscription information and
375 archives see Netatalk's SourceForge project page.
377 netatalk-admins@lists.sourceforge.net is a mailing list for Netatalk
378 system administrators. For subscription information and archives see
379 the Netatalk web page.
384 We would like to thank all contributors to the Netatalk project for
385 their commitment. Without the many suggestions, bug and problem reports,
386 patches, and reviews this project wouldn't be where it is.
388 - The Netatalk Development Team, October 2013