Fix build
[openafs.git] / NEWS
1                        User-Visible OpenAFS Changes
2
3 OpenAFS 1.5.75 (2010-07-07)
4
5   All platforms
6
7     * Prevent rx_rpc_stats global lock from being a bottleneck.
8
9     * Path MTU discovery is now provided to allow traffic to pass networks
10       with sub-1500 byte MTUs and poor fragment handling.
11
12     * Further reduce Rx NAT ping transmission when enabled.
13
14     * Update Kerberos 5-based token handling in rxkad from upstream
15       Heimdal.  (127554)
16
17     * Update version numbers emitted during build to reflect what is
18       actually being built.
19
20     * Add "-human" switch for human-readable units in fs diskfree and
21       listquota. (124529)
22
23     * vos provides reasons for locked volumes when known.
24
25     * Do not count retransmission and ping acks as non-idle for Rx
26       connections.
27
28     * Rx: provide service-specific data getter and setter routines.
29
30     * Update build-time Kerberos detection.
31
32     * Updated userspace AFS client.
33
34     * FUSE version of userspace AFS client.
35
36     * Beginning of a modernized test suite.
37
38     * Additional documentation.
39
40     * Updated documentation, notably the Administrators Guide.
41
42     * Substantial code cleanup.
43
44   All server platforms
45
46     * Update handling of vnode allocation failures.
47
48     * DAFS: allow salvaging volumes not known to the fileserver, to allow
49       cleanup of data not attached to a current volume.
50
51     * Properly handle volumes slated for destruction.
52
53     * Handle volumes with many files properly.
54
55     * Force core file generation in bosserver by overriding default
56       resource limits when possible.
57
58     * DAFS: Provide fast-restart equivalent option.
59
60     * Update vlclient and vldb_check.
61
62     * Avoid potentially corrupting a volume on creation if files are left
63       from previous failed cleanup.
64
65     * Note volume changed during salvage as needed.
66
67     * DAFS: do not assume invalid addresses are in fileserver address hash
68       table.
69
70     * Avoid tying up fileserver threads with volumes that are being taken
71       offline.
72
73     * Do not set inUse on volumes for non-DAFS other than in fileserver.
74
75     * Break origin's callback on target of rename operation.
76
77     * Avoid unneeded parent directory link updates during some rename
78       operations.
79
80     * Do not open /dev/console for writing in the fileserver.
81
82     * DAFS: avoid spurious restarts when binary restarts are configured.
83
84     * Avoid spurious and unneeded calls to sync(), which can slow down the
85       fileserver.
86
87   Microsoft Windows
88
89     * Revised SMB QuerySecurityInfo to address issues caused by MS10-020
90       (http://support.microsoft.com/kb/980232)
91
92     * Prevent use of the AFSCache file contents if mapped to a new
93       address.
94
95     * Make fs newcell include behavior compatible with the non-Windows
96       version.
97
98     * Provide a registry option (FreelanceImportCellServDB) to pre-create
99       mount points in the AFS root for all cells in CellServDB.
100
101     * Fix a memory leak in the cm_FreeServerList() routine.
102
103     * Reduce privilege when reading registry CellServDB.
104
105     * Add support for RPC Pipe Service NetWkstaGetInfo levels needed for
106       Windows 7.
107
108     * Prevent overflow when computing quota percentage in Explorer Shell.
109       (126846)
110
111     * Generate meaningful errors for ACL operations on freelance AFS root.
112
113     * Fix error handling on InlineBulkStatus RPCs.
114
115     * Show configuration pages for all types of MSI installations.
116
117     * Improve freemount AFS root directory handling and operations.
118
119     * Properly validate GetVolumeStatus pioctl responses.
120
121     * Commit file length changes and dirty buffers when flushing a file.
122
123   All UNIX client platforms
124
125     * Update version of files for disk cache.
126
127     * Do not call afs_FlushVCBs with xvcache lock held, to improve
128       parallelization.
129
130     * Add mariner log messages for creating and removing files.
131
132     * Don't hold xvcache lock while creating symlinks, to improve
133       parallelization.
134
135     * Provide -dynroot-sparse mode to not show all cells in CellServDB in
136       dynroot mode.
137
138     * Avoid a potential crash in aklog in linked cell handling.
139
140     * Log MTU-caused packet retransmission.
141
142     * Prevent crashes caused be fs checkservers while cache is being set
143       up.
144
145     * fs getserverprefs now has a buffer large enough for the default
146       CellServDB.
147
148     * Report server address when logging warnings.
149
150     * Avoid panic in GetCapabilities when cell is not known.
151
152     * Lock process name and id for advisory lock warnings when possible.
153
154     * Handle need for allocating additional Rx packets.
155
156     * Properly handle errors from InlineBulkStatus operations.
157
158     * Fix errors returned from fcntl() on readonly files locked for write.
159
160     * Flush pending changes to the server on LOCK_EX unlock.
161
162     * Reflect length changes as a result of callbacks even when file is
163       open for write.
164
165     * Avoid hanging due to error exit when attempting to store a large
166       file to a non-largefile fileserver.
167
168     * Recover from afs_GetVolSlot errors.
169
170   FreeBSD
171
172     * Bugfixes for kernel VFS and network routines.
173
174   IRIX
175
176     * Provide makesname().
177
178   Linux
179
180     * Avoid syscall probes when keyrings are present, by default. (125215)
181
182     * Remove "Big Kernel Lock" from VFS operations.
183
184     * Use filehandles for all Linux 2.6 versions to avoid need for matched
185       afsd. (127530)
186
187     * Updated RPM packaging.
188
189     * Fix dkms configuration provided with RPMs.
190
191     * Hold reference on pages during background I/O for cache bypass.
192
193     * Fix cache bypass handling of non-largefile fileservers.
194
195     * Protect truncate_inode_pages mappings with mutex or semaphore as
196       needed.
197
198     * Fix pagevec use in cache bypass. (127505)
199
200     * Updates for 2.6.35
201
202   MacOS
203
204     * Improve launchd configuration.
205
206     * Avoid hanging on recursive cache file lock acquisition when user
207       notification is enabled.
208
209     * Fix and re-enable bulkstat mode.
210
211   OpenBSD
212
213     * Build updates.
214
215   Solaris
216
217     * Precluding unmount while AFS is busy.
218
219     * Avoid deadlocking when releasing the VFS object.
220
221     * Stop network interface poller in kernel on AFS shutdown.
222
223     * Avoid issues with lookups on empty directory names. (127356)
224
225
226 OpenAFS 1.5.74 (2010-04-22)
227
228   All platforms
229
230     * Add "vos setaddrs" command.
231
232     * Rx library lock contention avoidance between rx_NewCall and
233       rx_EndCall.
234
235     * Rx library races due to inconsistent use of rx_connection
236       conn_data_lock to protect the flags field.
237
238     * Rx library inconsistent use of RX_CALL_TQ_WAIT which could result in
239       deadlocks.
240
241     * Rx library must signal transmit queue waiters when flushing.
242
243     * afsmonitor shows busy counts now.
244
245     * afsmonitor displays xstat callback statistics.
246
247     * Provide expandgroups for pts mem on a supergroups server.
248
249     * Provide supergroup option to liste nested groups during pts mem.
250
251   All server platforms
252
253     * Avoid volume lock contention during DAFS startup.
254
255   Microsoft Windows
256
257     * Avoid a race when updating cell vldb server lists that can result in
258       a crash.
259
260     * Avoid a deadlock when managing CM_SCACHESYNC_STOREDATA state
261       operations for directory objects.
262
263     * Add new Windows Application Event log messages for VBUSY,
264       VRESTARTING, ALL_BUSY, ALL_OFFLINE, and ALL_DOWN.
265
266     * Reduce lock contention by waiting for cm_buf_t I/O operations.
267
268     * Split the cm_buf_t flags field to separate the flags that are
269       protected by the cm_buf_t mutex from those protected by the
270       buf_globalLock.
271
272     * In cm_UpdateVolumeLocation, avoid searching for a ".readonly" volume
273       on a numeric volume name.
274
275     * File buffer allocations whose offsets are beyond server EOF should
276       be locally allocated and zero filled.  The file server should not be
277       issued a FetchData rpc which is guaranteed to fail.
278
279     * Enable integrated logon to work with Windows 7/2008 when user logons
280       are performed with a non-Domain Kerberos principal.
281
282     * Add Protection Error messages to aklog output.
283
284   All UNIX client platforms
285
286     * Provide a FUSE-interfacing userspace afs client.
287
288     * Updates to libuafs userspace cache manager.
289
290     * Probe servers using GetCapabilities instead of GetTime, thus
291       requiring fewer RPCs.
292
293     * Fix DNS SRV record handling for cell lookup.
294
295   FreeBSD
296
297     * Fix sleep/wakeup routines.
298
299     * Update for 8.0 release.
300
301   Linux
302
303     * Handle high memory addresses correctly.
304
305   MacOS
306
307     * Make 32 bit AFS syscalls work again.
308
309     * Work around finder "Duplicate" failure (caused by setting modes on
310       symlinks).
311
312     * Disable bulkstat again (will be re-enabled at or before .75).
313
314     * Provide symlink type hints during readdir.
315
316
317 OpenAFS 1.5.73 (2010-03-24)
318
319   All platforms
320
321     * NAT keepalive support at Rx level.
322
323     * Corrected SRV record support for cell name canonicalization.
324
325   All server platforms
326
327     * Fix volume callback notification to not notify unaffected clients.
328       (126497)
329
330     * Allow root directory recreation by salvager. (94658)
331
332     * Numerous DAFS fixes.
333
334     * Improvements to callback table overflow handling. (126451)
335
336     * bosserver now shuts down cleanly on SIGTERM.
337
338   Microsoft Windows
339
340     * Prevent the Explorer Shell extension from crashing if symlink
341       creation failed.  (126406)
342
343     * A Rx level NAT ping has been implemented. A registry value enables.
344
345     * Adds krb5 error message translation to aklog, afscreds,
346       afslogon.dll, the network identity manager afs provider and
347       translate_et.
348
349     * Default mode bit settings for file and directory creation are now
350       provided, and can be configured.
351
352     * An SMB request trace facility is provided and can be enabled for
353       debugging.
354
355   All UNIX client platforms
356
357     * Rx idle deadtime does not stop file writes.
358
359     * Disconnected AFS no longer has a race condition during remove ops.
360
361     * Fakestat avoids a condition which could cause it to block on network
362       activity.
363
364     * Several fixes to handle interruptions in vos operations. (33360,
365       125535)
366
367     * Allow more sysnames in a sysname list.
368
369     * Attempt to enforce timeouts on AFSDB lookups.
370
371   AIX
372
373     * Clean up properly on mount failure.
374
375     * Add entry to /etc/vfs to allow umount to work.
376
377   Linux
378
379     * Several issues to deal with older kernels.
380
381     * Avoid leaking the global lock in the /proc cellservdb code.
382
383     * Keyring destruction now cleans up all tokens.
384
385     * Keyring quotas are not enforced against root.
386
387   MacOS
388
389     * Some FSEvents hinting for authentication events now done. (23781)
390
391     * Update uninstaller. (125634)
392
393     * Rewrite afssettings and fstab code to avoid licensing issue with
394       APSL.
395
396     * Growl client for user monitoring of AFS events included.
397
398     * Properly support insert-only dropboxes.
399
400     * Add bulkstat support.
401
402     * Include support for moving in Finder across mount points.
403
404     * Preferences Pane includes support for Kerberos 5 ticket renewal.
405
406
407 OpenAFS 1.5.72 (2010-02-15)
408
409   All platforms
410
411     * Provide internationalization support in com_err.
412
413     * Fix array length checking to avoid crashes when checking for a
414       volume type based on name in vos.
415
416   All server platforms
417
418     * Provide backward compatible "-f" flag to salvager for force mode.
419
420   Microsoft Windows
421
422     * Restore use of DNS AFSDB and SRV records by kaserver clients.
423
424   All UNIX client platforms
425
426     * Fix client cache file truncation to not lose chunks when truncating
427       a large file.
428
429     * Ensure a cache writeback hook is installed in the client (bug from
430       1.5.71).
431
432     * Avoid spurious free memory warnings during clean shutdown.
433
434     * Fakestat mode avoids AFSDB lookups.
435
436     * "fs storebehind" now correctly reports errors on readonly volumes.
437
438     * Additional documentation for "fs getcacheparms"
439
440     * Forced new uuid generation with "fs uuid -generate" now works
441       enforced permission correctly.
442
443   MacOS
444
445     * Add optimized Rx event handler in kernel.
446
447     * Installer now allows installing an older version.
448
449     * Panic decoder can now deal with MacOS 10.5 again.
450
451     * MacOS ._ files are now correctly not looked up as cellnames.
452
453   Linux
454
455     * To deal with SELinux file labeling, try cache accesses with current
456       credentials in event of failure.
457
458     * Rx XDR encoding bug on i386 Linux is fixed (bug introduced in
459       1.5.71).
460
461   IRIX
462
463     * Code compilation fixes.
464
465   OpenBSD
466
467     * Update for OpenBSD 4.6.
468
469
470 OpenAFS 1.5.69 (2010-01-19)
471
472   All platforms
473
474     * Configuration of BOSserver no longer defaults to weekly restarts
475       enabled.
476
477     * Provide BOS restricted mode by default.
478
479     * Add support for "vos endtrans" command.
480
481     * Default to providing full output from vos listvol.
482
483     * Correct additional-address tracking in the fileserver.
484
485     * Improve Rx performance by not unnecessarily dropping and reacquiring
486       call locks in read and write processes.
487
488     * Avoid crashes when monitoring volserver transactions across
489       potential transaction garbage collection.
490
491     * Numerous warning fixes.
492
493   All server platforms
494
495     * Avoid saving fileserver state in demand attach fileserver when
496       panicing.
497
498     * Demand attach fileserver allows other callers to schedule salvages.
499
500     * Demand attach "bos salvage" now works correctly with restricted
501       mode.
502
503   Microsoft Windows:
504
505     * Numerous changes to the client-internal btree directory handling to
506       prevent errors.
507
508     * fs examine reports owner and group ids as signed values (PTS groups
509       are negative).
510
511     * Preclude corruption due to races writing to smb buffers.
512
513     * Allow MTU settings in registry to be used.
514
515     * Apply MTU to both send and receive sizes.
516
517   All UNIX client platforms
518
519     * Avoid double-freeing Rx call structure if reading a response from
520       the file server results in a short read.
521
522     * Handle negative lengths in FetchStatus results correctly.
523
524     * Properly clean up allocated memory at shutdown.
525
526     * Default to AFSDB compiled into the cache manager.
527
528     * Avoid inadvertant disclosure of stat() information to clients not so
529       entitled.
530
531     * Correct a bug with AFSDB lookups introduced with SRV record support.
532
533   MacOS
534
535     * Install kernel panic processing tool in /Library/OpenAFS/Tools.
536
537     * Include debugging symbols for kernel extension in additional package.
538
539     * Support "Application Firewall" users.
540
541     * Avoid ._cellname AFSDB lookups.
542
543     * Compile preferences pane as a universal binary.
544
545   Linux
546
547     * Use splice to speed up storing files.
548
549     * When using memcache, avoid duplicating work in readpages.
550
551     * Use dget_parent to safely find an inode's parent.
552
553     * Disable access time updates in our superblock.
554
555     * Avoid crashing doing writeback if no credentials were stashed at
556       file open.
557
558     * Simplify keyring support.
559
560     * Properly clean up vcache in event of failed mount.
561
562   FreeBSD
563
564     * Update for current FreeBSD 8.
565
566   Solaris
567
568     * Abstractly manipulate groups as now required.
569
570     * Abstractly access time instead of using lbolt directly.
571
572
573 OpenAFS 1.5.68 (2009-12-08)
574
575   All platforms
576
577     * aklog now attempts to convert non-AFS errors to human-readable
578       strings.
579
580     * Make stack not executable when compiling assembler source with GCC.
581
582     * Numerous source warning cleanups and code reorganization.
583
584   All server platforms
585
586     * Compute midnight for volume statistics calculation from local time.
587
588     * Salvager now orphans duplicate special inodes when running to allow
589       recovery in event of a problem, instead of simply ignoring the
590       issue.
591
592     * Support to ensure a server panic attempt leaves a core and thus
593       restarts in a timely manner, rather than potentially hanging. Use
594       panic to attempt cleanup before leaving a core when possible.
595
596     * Volume sync data reported during bulkstatus is now set correctly.
597
598     * Provide better tuning for fileserver file descriptor caching.
599
600     * Allow more than 128 threads in fileserver by modifying host
601       structure in-use tracking.
602
603     * Avoid crashes getting volume server status during transaction
604       cleanup.
605
606     * Improved logging of offline volume conditions.
607
608     * Correct volume statistics when cloning a volume.
609
610     * Avoid referencing host structures in the fileserver which are marked
611       for deletion.
612
613     * Demand attach fileserver corrections to avoid coring during an
614       aborted startup.
615
616     * host array bounds checking corrections to avoid buffer overflow.
617
618     * Handle special inodes correctly when promoting an inode fileserver
619       readonly volume to read-write.
620
621   Microsoft Windows
622
623     * Set the DOS Readonly attribute on a file/directory whenever the unix
624       mode combined with the mask 0200 is true.  Previously there was a
625       discrepency between the mask used for testing for readonly behavior
626       and that used for setting the attribute.
627
628     * Disable AFSVolSync based .readonly "whole-volume callback" support
629       because the all file servers prior to 1.5.67 (and perhaps 1.4.12) do
630       not properly assign a value to the AFSVolSync structure in bulk
631       status RPC responses.
632
633     * Improve the error output from aklog to output the value from krb5
634       error_message() if the afs_com_err output indicates an unknown
635       value.
636
637     * Convert VBUSY and VRESTARTING to CM_ERROR_ALLBUSY and do not permit
638       them to be exposed to the smb redirector.
639
640     * Convert STATUS_TIMEOUT responses to STATUS_IO_TIMEOUT to avoid
641       confusion within the smb redirector.
642
643     * Fix the byte order assigned to port numbers associated with AFSDB
644       record lookups.  They must be network byte order not host byte
645       order.
646
647     * Add dynamic server ranking based on RPC round trip time
648       measurements.
649
650   All UNIX client platforms
651
652     * Additional shutdown-time memory leaks removed.
653
654     * Improved logging of resource contention.
655
656     * Provide dumping for Rx debug packet tracking support in source.
657
658     * Update afscp test client to build, and provide an unlock client.
659
660     * Client buffers for directory parsing can now be allocated beyond the
661       fixed set formerly provided.
662
663     * Work around race condition when manipulating read-only volume
664       callbacks.
665
666     * Bugfixes to get PAG value pioctl.
667
668     * Bugfixes to SRV record support.
669
670   Linux
671
672     * Path MTU tracking code cleanup.
673
674     * Avoid an oops due to racing with vcache recycling thread.
675
676     * Changes to keyring PAG handling: for sufficiently new kernels, use
677       only keyring-based PAGs, and disable group PAGs entirely.
678
679     * Updates to the kernel page cache interface: writing pages will now
680       not spuriously leak page locks, and will avoid requiring duplicate
681       work.
682
683     * Credential references are now tracked using native atomic counters.
684
685     * Kernel mutex/semaphore lock ordering fix to avoid deadlocks.
686
687     * Manipulate disk cache with credentials used to initialize it, to
688       avoid security issues.
689
690   MacOS
691
692     * Fix fstrace message catalog location.
693
694     * Fix kernel fstrace logging.
695
696
697 OpenAFS 1.5.66 (2009-10-25)
698
699   All platforms
700
701     * Avoid calling exit() in library code.
702
703     * Add rx window size and peer timeout tuning APIs.
704
705     * Correct rx peer timeout handling to disallow 0ms timeouts.
706
707     * Correct calculation of rx RTT by disregarding retransmitted packets.
708
709     * vos manpages updated to reflect changes in recent versions.
710
711     * GNU-style long options (e.g. --cell) are now supported in all
712       commands.
713
714     * fs listacl can now print a command to recreate the current ACL.
715
716   All server platforms
717
718     * Fix a race on transaction objects in the volserver which can cause a
719       crash.
720
721     * Avoid destroying and setting to NULL the callback connection when it
722       could still be being used.
723
724     * Correct unlink handling in salvager.
725
726     * Improve error messages due to I/O errors in the volserver.
727
728     * Correct an issue which caused converted RO to RW volumes on namei
729       fileservers to not come online immediately.
730
731   Microsoft Windows
732
733     * Official support for Windows 7 and Server 2008 R2.
734
735     * Prevent a file server bug (FetchData returning an invalid length
736       instead of zero) from causing an "unexpected network error" when
737       writing to files.
738
739     * Promote DNS SRV records as superior to DNS AFSDB records.  Support
740       arbitrary port numbers for vldb servers.
741
742     * Add AFSVolSync based .readonly "whole-volume callback" support.
743       With this functionality, multiple objects from a .readonly volume
744       can have their status validated by issuing a single
745       RXAFS_FetchStatus RPC.
746
747     * Remove drive mapping functionality and service start/stop from
748       afscreds.exe.
749
750     * Remove drive mapping functionality from afs_config.exe.
751
752     * Use {HKLM,HKCU}\SOFTWARE\OpenAFS\Client DWORD "ShowMountTab" to
753       restore access to drive mapping functionality in afscreds.exe and
754       afs_config.exe.
755
756     * Adjust SMB error return codes to avoid returning STATUS_TIMEOUT
757       which results in the SMB redirector disconnecting.
758
759     * Network Identity Manager OpenAFS Provider now provides its own "AFS
760       lock" notification icon to report the status of "have tokens, have
761       no tokens, service not started, service started but inaccessible".
762       Hovering over the icon lists the cells for which tokens exist (if
763       any) and the OpenAFS version number.  Double-clicking executes the
764       Network Identity Manager default action.
765
766     * Prevent pioctl calls from retrying indefinitely when a sharing
767       violation error occurs.
768
769   All UNIX client platforms
770
771     * Correct a condition which could discard the error from initializing
772       a fetch request.
773
774     * Avoid using invalid references to afs_Conn connection structures,
775       and thus potentially producing invalid data when a retry is needed.
776
777     * SRV records are now supported for discovering AFS servers.
778
779   Linux
780
781     * Correct writepage behavior.
782
783     * Fix error code handling in the writepage code.
784
785     * Avoid leaking page locks, which could potentially hang a machine.
786
787   MacOS X
788
789     * Preferences Pane improvements.
790
791   HP-UX
792
793     * Avoiding attempting to handle critical signals in servers, so that
794       core file handling works correctly.
795
796
797 OpenAFS 1.5.65 (2009-10-06)
798
799   All platforms
800
801     * Code compilation warning fixes, to enable better finding and
802       tracking bugs.
803
804     * Provide configure-time switch to enable code warning compilation.
805
806   All server platforms
807
808     * Demand-attach fileserver now makes volume LRU list operations
809       exclusive operations to avoid races during adding to the list.
810
811     * Fileservers now avoid potential "negative length" fetches.
812
813     * A leak in host tracking objects in the fileserver has been fixed.
814
815     * Salvager now unlinks all files by full path, to deal with the change
816       to not chdir for core file tracking.
817
818     * Salvager avoids asserting if the volume header is unreadable.
819
820     * Demand-attach fileserver puts back volume references from fssync
821       handlers when done.
822
823   Microsoft Windows
824
825     * Improved service response to suspend and shutdown event
826       notifications.
827
828     * Avoid a bug in the file server that can result in an invalid length
829       being returned as part of a fetch data response if the client
830       attempts to read beyond the length of the file.
831
832     * Do not publish a default stream object for directories and mount
833       point objects.  This was impacting the ability of some Windows XP
834       systems to save roaming profiles.
835
836   All UNIX client platforms
837
838     * A bug which could cause erroneous handling of lengths on data reads
839       has been fixed.
840
841     * A bug where erroneous length returns from the fileserver could
842       result in a false error has been fixed.
843
844   Linux
845
846     * Background page copies are now supported for enhanced disk cache
847       read performance.
848
849     * Blocking readahead is supported in readpages() to reduce overhead.
850
851     * Use readpage() instead of read() to access cache data to avail disk
852       cache users of the kernel backing cache for improved performance.
853
854     * Minimize credential handling for improved performance.
855
856   MacOS X
857
858     * Preferences Pane cleanup.
859
860   Solaris
861
862     * Provide a fs_pathconf method with sensible defaults.
863
864     * Provide a _PC_FILESIZEBITS method to fix some NFS translator
865       consumers.
866
867
868 OpenAFS 1.5.64 (2009-09-22)
869
870   All server platforms
871
872     * The demand attach fileserver now puts back volume references gotten
873       via the fssync interface.
874
875     * The demand attach fileserver had a structure reference error, which
876       has been correected.
877
878   Microsoft Windows
879
880     * Restores Windows 2000 compatibility.
881
882     * Fixes a data consistency error between the output of NetWkstaGetInfo
883       and NetServerGetInfo RPCs, specify the Lan workstation group name
884       "AFS", and report server name as "AFS" instead of "\\AFS" when the
885       caller asks for "\\AFS".
886
887     * Enables executables to be run from \\AFS on Windows 7.  Returns
888       "Name not found" instead of "File not found" when a directory or
889       file name cannot be found.  This avoids loader errors when system
890       dlls cannot be located in the executable directory.
891
892     * Prevents cache manager from marking the file server "down" when the
893       data returned in response to either RXAFS_FetchData64 or
894       RXAFS_StoreData64 is invalid.
895
896     * Adds pioctl data validation to the AFS Explorer Shell extension.
897
898   All UNIX client platforms
899
900     * A bug which could cause a kernel panic in 1.5.63 has been corrected.
901       This would manifest as a GetDCache panic or oops.
902
903   Linux
904
905     * aklog -setpag works again with recent kernels when keyring is in
906       use.
907
908   MacOS
909
910     * When Fast User Switch is in use, AFS login is now handled correctly
911       by the integration tool included with the preferences pane.
912
913     * Several packaging bugs have been corrected.
914
915
916 OpenAFS 1.5.63 (2009-09-11)
917
918   All platforms
919
920     * The restorevol command is now documented and installed as a user
921       command.
922
923     * The uss command now properly translates vldb entries to its expected
924       format when handling them in all cases.
925
926     * Documentation now refers to Kerberos instead of kaserver.
927
928   All server platforms
929
930     * bosserver now handles BosConfig.new when restarting, allowing
931       configuration to be replaced at restart time rather than with bos
932       delete and bos create.  Documentation is updated to reflect this.
933
934     * The demand attach fileservice not longer potentially hangs trying to
935       terminate demand-salvages which have already exited.
936
937     * The demand attach fileservice has been modified to avoid spurious
938       'SYNC_putRes: write failed' warnings when some protocol messages
939       cannot be acknowledged due to the sender terminating the connection.
940
941     * In the event of failure to contact the vlserver or ptserver, the
942       fileserver will not exit and trigger a forced salvage. It will
943       continue to try in the background to contact the needed services.
944
945     * The salvager can now repair certain cases of a damamged vnode index.
946
947     * The accessDate metadata for a volume is now updated correctly.
948
949   Microsoft Windows
950
951     * CRITICAL: Some applications for example those based on Cygwin were
952       unable to access data stored in the AFS name space.  Explorer Shell
953       also experienced inconsistent behavior.  This is fixed.
954
955     * CRITICAL: Multiple AFS pioctl requests issued nearly simultaneously
956       by applications could result in pioctl responses being received by
957       the wrong requester.  This in turn could result in application
958       crashes.  symlink.exe, fs.exe, afslogon.dll, afscreds.exe, and the
959       netidmgr afscred.dll plugin were all affected.
960
961     * Some XP machines running 1.5.62 had trouble saving roaming profile
962       data.  This is fixed.
963
964     * Integrated Logon (afslogon.dll) did not function with domain
965       specific configurations.
966
967     * Ensure that access denied and over quota errors experienced while
968       storing data to the file server do not result in on-going retry
969       attempts.
970
971   All UNIX client platforms
972
973     * Except on Solaris and AIX, the compiler may now be overriden at
974       configure time by setting the CC environment variable.
975
976     * afsd now properly deals with large cache partitions.
977
978   FreeBSD
979
980     * Build shared libafsauthent and libafsrpc.
981
982   Linux
983
984     * Kernel module DKMS support now installs an unstripped module to
985       allow debugging information to be collected.
986
987   MacOS
988
989     * Preferences pane properly updates token information.
990
991   MacOS 10.6
992
993     * klog will now properly handle passwords of 8 or fewer characters
994       with an AFS string to key on hosts able to run 64 bit binaries.
995
996     * A panic at AFS shutdown due to "NO PCB" on a udp_lock has been
997       addressed.
998
999     * The panic decoder script included in the source now properly handles
1000       32 and 64 bit panics.
1001
1002   NetBSD
1003
1004     * Avoid defining AFS_KERBEROS_ENV globally as it creates a circular
1005       dependency.
1006
1007     * Build shared libafsauthent and libafsrpc.
1008
1009   OpenBSD
1010
1011     * Build shared libafsauthent and libafsrpc.
1012
1013
1014 OpenAFS 1.5.62 (2009-08-28)
1015
1016   All platforms
1017
1018     * Numerous invisible changes to improve code maintainability,
1019       portability and enhanceability.
1020
1021   Microsoft Windows
1022
1023     * CRITICAL: Fixes two errors that can result in data loss when storing
1024       data to the file server.
1025       1. Failure to Store Portions of Unaligned Writes
1026       2. Failure to Store Data to File Servers Lacking Large File Support
1027       Read the announcement for more details:
1028         http://www.openafs.org/pipermail/openafs-announce/2009/000305.html
1029
1030     * CRITICAL: The cache manager daemon thread could terminate when the
1031       machine enters suspend mode.  This daemon thread performs the
1032       background check of down servers, offline volumes, callback
1033       expirations, etc.
1034
1035     * CRITICAL: Integrated Logon (afslogon.dll) was terminating
1036       unexpectedly.  Error checking has been improved and NULL pointer
1037       dereferences after Lsa API calls fail have been eliminated.
1038
1039     * For the first time, the OpenAFS SMB Server supports the DCE RPC
1040       services SRVSVC and WKSSVC.  Browsing \\AFS with the Explorer Shell
1041       or NET VIEW will now be faster and provide additional functionality.
1042       No longer will cell names longer than 12 characters be truncated.
1043
1044     * Improvements to DFS Referral request processing have been
1045       implemented.
1046
1047     * Unnecessary DNS lookups of share names are avoided improving
1048       performance.
1049
1050   All UNIX client platforms
1051
1052     * Non-Kerberos PAM modules work correctly again.
1053
1054   MacOS X
1055
1056     * MacOS 10.6 (Snowleopard) is now supported, both 32 and 64 bit mode.
1057
1058     * Updates to the AFSCommander preferences pane.
1059
1060     * Installer now permits cell names with dashes.
1061
1062
1063 OpenAFS 1.5.61 (2009-08-06)
1064
1065   All platforms
1066
1067     * Correct another race condition in the Rx library that could result
1068       in an unexpected panic while freeing the Rx call iovq.
1069
1070     * rx packet resend and data packets sent counts were incorrect.
1071
1072     * fs setquota, fs setcachesize, vos setfields, and vos create now
1073       accept human readable orders of magnitude. (K, M, G)
1074
1075     * fs listquota fixed to permit large quota sizes to be displayed.
1076
1077     * Correct documentation of bosserver permissions requirements.
1078
1079     * Modify vlserver to avoid potentially corrupting the database through
1080       volume id reuse.
1081
1082     * Generalized support for fast Rx timeout due to network
1083       down/unreachable.
1084
1085   All server platforms
1086
1087     * Allow audit logs to be sent via sys5 IPC message queues instead of
1088       logged directly.
1089
1090   Microsoft Windows
1091
1092     * If a file server becomes inaccessible while the cache manager has
1093       dirty buffers to write, the afsd_service buf_IncrSync thread can
1094       attempt to use 100% of the cpu.
1095
1096     * Fix "fs newcell" which was broken in 1.5.60.
1097
1098     * Do not attempt to synchronize dirty buffers if the associated volume
1099       is known to be unavailable.
1100
1101     * Modify behavior of a Freelance mountpoint target that does not
1102       specify a cell.  Instead of assuming the target volume is in the
1103       Freelance.Local cell, use the workstation "Cell" specified in the
1104       registry. A mountpoint target of "#root.cell." will now mean the
1105       root.cell volume in the workstation cell for the current session.
1106       If the workstation cell changes from "athena.mit.edu" to
1107       "andrew.cmu.edu", the referenced volume will also change without
1108       requiring that the mount point targets be altered.
1109
1110     * Add cm_FindServerByUuid().  Re-implement RXAFS_InitCallBackState3()
1111       to permit the server Uuid to be used to lookup the server object and
1112       from that determine the cell.  This permits callbacks that are
1113       received from alternate addresses to be processed with a known
1114       server object.  Previously a request from an unknown server would
1115       clear all callbacks from all cells.
1116
1117     * Fix a bug that prevented optimal performance when using a non-zero
1118       value for 'daemonCheckVolCBInterval'.  As a reminder, when
1119       "daemonCheckVolCBInterval" is set to a non-zero value, all .readonly
1120       volume callbacks are automatically renewed 90 minutes before their
1121       expiration.
1122
1123     * Fix automatic ranking of vldb servers whose values are obtained from
1124       the CellServDB file.
1125
1126     * Add failover for RX CALL TIMEOUT errors when the volume is readonly
1127       or the call is to a vldb server.
1128
1129     * Add registry based cell search functionality to NetIdMgr,
1130       afs_config.exe, and klog.exe.
1131
1132     * afsconf_GetCellInfo() has been modified to perform gethostbyname()
1133       lookups on the host names in the CellServDB instead of using the
1134       specified IP addresses.  This provides aklog, pts, vos, etc. the
1135       same CellServDB behavior that the Windows Cache Manager uses.
1136
1137     * When updating the stat cache entry callback of a .readonly object
1138       from the volume group object, update the file server reference to
1139       ensure it matches the most update to date callback.
1140
1141     * Add proper support for processing callbacks from multi-homed file
1142       servers.  Instead of comparing servers by cm_server_t pointer,
1143       compare them by UUID when the UUID is known.
1144
1145     * During a shutdown short circuit the offline volume check daemon
1146       functionality.
1147
1148     * Return the error code of RXAFS_FetchData / RXAFS_StoreData in
1149       preference to an error code reported by rx_EndCall.
1150
1151     * Add "PerFileAccessCheck" registry value to permit testing against
1152       experimental file servers that include per-file acl support.  This
1153       value is intentionally undocumented.  It is not to be used by
1154       production environment deployments.
1155
1156     * Fix a bug introduced in 1.5.60 that prevents the afs netidmgr
1157       provider from obtaining tokens when referrals are in play.
1158
1159     * Add "fs chown" and "fs chgrp" commands to permit the owner and group
1160       of objects stored in AFS to be set from Windows.
1161
1162     * Avoid performing background daemon operations when the machine is
1163       going into suspend mode.
1164
1165     * Perform offline volume checks in most recently used order.
1166
1167     * Prevent crash when a data version for a cache object goes backwards.
1168
1169     * Multi-thread safe library versions are now being generated and used.
1170       mtafsubik.lib, mtafsutil.lib, mtafsvldb.lib, mtafsvol.lib.
1171
1172     * Microsoft SMB Redirector (mrxsmb.sys) support for
1173       ExtendedSessTimeout values are now available on XP through Windows
1174       7.  Add functionality to autodetect if such support is present on
1175       the machine.  If so, configure it if necessary and dynamically
1176       adjust the AFS Rx timeout values accordingly.
1177
1178   All UNIX client platforms
1179
1180     * Fix out-of-tree source builds.
1181
1182   MacOS
1183
1184     * GUI installer now asks for local cell information.
1185
1186     * AFS Commander preferences pane is now installed by default.
1187
1188   Solaris
1189
1190     * Avoid kernel panics due to null pointer dereferences in the network
1191       interface poller kernel thread.
1192
1193
1194 OpenAFS 1.5.60 (2009-05-31)
1195
1196   All platforms
1197
1198     * Retry volserver transaction creation on failure.
1199
1200     * Allow building HTML and PDF documentation from included XML copies
1201       of User Guide, Admin Guide and Quick Start Guide for Unix.
1202
1203     * Documentation updates and additional documentation.
1204
1205     * Add -encrypt support to pts client.
1206
1207     * Convert MR-AFS fs commands to OSD commands.
1208
1209   All server platforms
1210
1211     * Updated background sync process in fileserver to avoid a race which
1212       could result in a volume being taken offline.
1213
1214   Microsoft Windows
1215
1216     * On April 9th Microsoft released a Hot Fix for Windows Server 2003
1217       SP2 that corrects a deadlock in the smb redirector and also adds new
1218       functionality that permits the AFS SMB server to be given a longer
1219       timeout than is normally the case.  New functionality has been added
1220       to configure these additional LanmanWorkstation\Parameter values.
1221       (This functionality has been backported to XP SP3 and is scheduled
1222       to be released on June 5th.)
1223
1224     * Fix RT#124787, a race condition between "fs flush <dir>", "fs
1225       flushvolume", or "fs flushall" and on-going directory operations
1226       that can result in afsd_service.exe crashing.
1227
1228     * Release Notes, User and Administrator guides are now shipped as
1229       indexed Windows HtmlHelp Files. (.chm).  Shortcuts are provided from
1230       the Start Menu.
1231
1232     * A method of specifying Client CellServDB information within the
1233       registry has been added that can be used to either override the
1234       CellServDB file or force the use of DNS lookups for a given cell.
1235       See the release notes for details.
1236
1237     * The pioctl interface now properly handles drive letter substitution
1238       to UNC paths.  (SUBST <d:> <\\afs\cell\path>)
1239
1240     * The BackConnectionHostNames registry value configuration was broken
1241       when dynamic re-establishment of Netbios Name registrations was
1242       added.  This release restores the functionality.
1243
1244     * All hidden vos.exe commands are now revealed.
1245
1246     * Attempts to store the same dirty file chunk from multiple threads
1247       are now prevented.
1248
1249     * The IsPathInAfs test in Explorer Shell Extension and fs.exe now
1250       permits broken symlinks to be treated as being in AFS.
1251
1252     * vos.exe commands that output 64-bit integer values once again do so.
1253       This was broken in 1.5.59.
1254
1255     * Cygwin Import Libraries are provided in the SDK for all OpenAFS
1256       DLLs.  This permits building cygwin applications against OpenAFS
1257       libraries.
1258
1259     * NSIS installer does a much better job of cleaning up files left over
1260       from previous installs.
1261
1262     * libafsconf.dll moved from Client\Program to Common directory as is
1263       is now used by all modules for CellServDB processing.
1264
1265   All UNIX client platforms
1266
1267     * Write back changes on last store for memcache to avoid discarding
1268       changes.
1269
1270     * Abstract disk cache support to allow for path, fh, inode based
1271       caches with no need for messy ifdef structures each time a new type
1272       is added.
1273
1274   DragonflyBSD
1275
1276     * Support as a userland port.
1277
1278   FreeBSD
1279
1280     * Corrected structure definition for userspace cache manager to allow
1281       builds to complete.
1282
1283   Linux
1284
1285     * Corrected client locking support.
1286
1287     * Updated patch to stop deadlocking in the kernel during mmap.
1288
1289     * Avoid oops when setting up groups for PAGs to match keyrings.
1290
1291     * Use Linux fh-based cache in cases where possible by default.
1292
1293   MacOS 10.3:
1294
1295     * Corrected structure definition for userspace cache manager to allow
1296       builds to complete.
1297
1298   OpenBSD
1299
1300     * Support for OpenBSD 4.5.
1301
1302   Solaris
1303
1304     * Corrected support for server-side vos split interface.
1305
1306
1307 OpenAFS 1.5.59 (2009-04-06)
1308
1309   Microsoft Windows
1310
1311     * Increased service priority class to "High" to match the priority of
1312       system components that are dependent upon the a timely response.
1313
1314     * SMB error responses avoid returning errors that could confuse the
1315       Microsoft SMB redirector into disconnecting the connection to \\AFS.
1316
1317   All UNIX client platforms (except MacOS X 10.4 and 10.5)
1318
1319     * OpenAFS 1.5.59 contains fixes for the client issues addressed by the
1320       security advisories OPENAFS-SA-2009-001 and OPENAFS-SA-2009-002.
1321
1322   Linux platforms
1323
1324     * Support for prerelease Linux 2.6.30 kernels.
1325
1326
1327 OpenAFS 1.5.58 (2009-03-30)
1328
1329   All platforms
1330
1331     * Code cleanup and prototyping.
1332
1333     * Avoid unnecessary blocking in Rx periodic cleanup code.
1334
1335   All server platforms
1336
1337     * Fileserver CopyOnWrite routine optimized for performance.
1338
1339     * Make fileserver callback dumps 64 bit safe.
1340
1341     * Fix byte order issues with fileserver host hashing.
1342
1343     * Fix buffer size issues with butc.
1344
1345     * Fix several Ubik recovery issues.
1346
1347     * Avoid leaking file references in the fileserver.
1348
1349     * Fix a race in DAFS while closing vnodes, and another offlining
1350       volumes.
1351
1352     * volserver interfaces for volume splitting client.
1353
1354   Microsoft Windows
1355
1356     * [RT 124293] A race condition exists which can result in a crash.
1357
1358     * [RT 124276] If the vldb is out of sync with the contents of the file
1359       servers, afsd_service will retry too many times when a file server
1360       reports a volume as not being present.  Now if the list reported by
1361       the vldb is the same as the previously seen list, then the retry is
1362       aborted.
1363
1364     * [RT 124276] Read-only volume failover was broken in 1.5.53 whenever
1365       accessing a volume results in VNOVOL or VMOVED.
1366
1367     * [RT 124276] Prior to 1.3.70 the volume server reference list was not
1368       reference counted and would be prematurely freed while in use.  When
1369       reference counting was added in 1.3.70 a bug was introduced that
1370       could result in service reference list corruption.
1371
1372     * Add Windows Application Event Log warning messages for "Client SMB
1373       MPX value too large" and "Client SMB Buffer Size too small".
1374
1375     * Renaming of files across directory boundaries would result in an
1376       invalid handle error when attempting to access the files after the
1377       move.
1378
1379     * Fix the handling of Tran2 Set Path Info RPCs.  Do not fail when a
1380       smb file descriptor cannot be found.  The whole point of using a
1381       Path Info function is because an smb file descriptor wasn't
1382       allocated.
1383
1384     * More edge cases in which dynamic addition of Freelance root.afs
1385       entries would get the wrong FID or where the root.afs directory
1386       would not be refreshed.
1387
1388     * Buffer overflow could occur if the workstation cell name was longer
1389       than 64 characters.  Crashes could occur in afscreds.exe,
1390       afslogon.dll, and afsd_service.exe.
1391
1392     * VNOSERVICE and VOFFLINE errors were leaking and were exposed to the
1393       smb client.
1394
1395     * Log file server uuid values as part of the cm_server object when
1396       available.  Dump the cm_server object list in response to "fs
1397       memdump".
1398
1399     * Optimize the performance of resetting access control lists when
1400       tokens are set or removed.
1401
1402     * Remove symlink recursion tests and increase max symlink count to 64
1403       from 16.
1404
1405     * Windows specific Rx performance improvements.
1406
1407     * Support for Network Identity Manager 2.0
1408
1409   All UNIX client platforms
1410
1411     * Avoid issues with freeing resources at shutdown.
1412
1413     * Numerous fixes to disconnected AFS.
1414
1415     * Disconnected AFS fixes for replaying changes without double-freeing.
1416
1417     * Attempt to use krb524 principal conversion in aklog if available.
1418
1419   AIX
1420
1421     * Kerberos configuration at build time corrected.
1422
1423   Linux
1424
1425     * Default to dynamic allocation of AFS kernel cache entries to allow
1426       growth for inotify()-pinned entries. (beagle, famd, etc)
1427
1428     * Change client truncation routines to avoid locking issues.
1429
1430     * IA64 port clients fixed on Linux 2.6.
1431
1432     * RPMs now install fstrace message catalog.
1433
1434     * Support through kernel 2.6.29 tested.
1435
1436     * Fix locking issues on CellServDB file in /proc.
1437
1438   OpenBSD
1439
1440     * Support OpenBSD 4.4
1441
1442
1443 OpenAFS 1.5.57 (2009-01-23)
1444
1445   All platforms
1446
1447     * Conditional compilation of rxdebug support is now possible.
1448
1449     * Documentation updates.
1450
1451     * Further race connditions in Rx have been corrected.
1452
1453   All server platforms
1454
1455     * Salvager no longer attempts to recreate headers in the wrong
1456       partition.
1457
1458     * Volumes are properly marked in use on creation and subsequently on
1459       examination with vos.
1460
1461   Microsoft Windows
1462
1463     * Undo the "UAC manifest fix" applied to afs_config.exe.
1464
1465     * Ensure that Freelance allocation of vnodes follow the AFS convention
1466       of odd vnodes are directories and everything else is an even vnode.
1467
1468     * Add Freelance logic to mount point and symlink evaluation functions.
1469
1470     * Enhance smb_ParseASCIIBlock() so that it can handle all of the
1471       STRING formats defined by the CIFS Technical Report 1.0.
1472
1473     * Validate the output of smb_ParseASCIIBlock() in all callers.  Return
1474       CM_ERROR_BADSMB if the STRING field cannot be parsed.
1475       CM_ERROR_BADSMB will cause the contents of the packet to be logged.
1476
1477     * If multiple SMB Raw Write operations were taking place at the same
1478       time, there could be data corruption because unique event objects
1479       were not generated for each Netbios receive operation.
1480
1481   All UNIX client platforms
1482
1483     * Userspace AFS library can now deal with large files when supported
1484       by the platform.
1485
1486     * Numerous updates to disconnected AFS support, including changes to
1487       allow reconnection to work in more circumstances.
1488
1489   FreeBSD
1490
1491     * FreeBSD unstrategy code has been updated.
1492
1493   Linux
1494
1495     * A race during file truncation has been corrected.
1496
1497     * System call probing routines have been updated.
1498
1499     * 2.6.29 is now supported.
1500
1501   MacOS
1502
1503     * 10.3 support has been corrected.
1504
1505   OpenBSD
1506
1507     * Initial OpenBSD 4.4 support.
1508
1509   Solaris
1510
1511     * Updates to allow compiling on newer OpenSolaris are now included.
1512
1513
1514 OpenAFS 1.5.56 (2008-12-30)
1515
1516   All platforms
1517
1518     * libuafs (userspace cache manager) updated to correct several errors.
1519
1520     * Additional rx debugging support is available as a conditional
1521       compile.
1522
1523     * A race condition in Rx leading to a panic has been corrected.
1524
1525     * Rx idle time tracking has been corrected.
1526
1527     * ubik clone server support has been corrected.
1528
1529   All server platforms
1530
1531     * Salvager no longer leaves cores in vice partitions.
1532
1533     * The vol-dump tool now supports dumps larger than 2gb where possible.
1534
1535     * Operations on multiple files now report all FIDs in the audit log.
1536
1537     * butc XBSA support now works correctly on amd64.
1538
1539   Microsoft Windows
1540
1541     * The NetIDMgr AFS Provider automated configuration logic was broken
1542       by the introduction of Kerberos referrals.  If the realm of the
1543       identity cannot be determined, the workstation cell is now assumed
1544       to belong to the newly created identity.
1545
1546     * Avoid a reference count under flow during rename operations.
1547
1548     * Avoid a crash caused by treating an arbitrary length directory
1549       search mask as an 8.3 mask.
1550
1551     * Prevent rename operations if a case insensitive match for the target
1552       name already exists and does not refer to the object being renamed.
1553
1554     * Increase the maximum number of background daemons to 64.
1555
1556     * Fix the UAC manifest applied to afs_config.exe
1557
1558   All UNIX client platforms
1559
1560     * Updates to disconnected AFS support.
1561
1562   FreeBSD
1563
1564     * FreeBSD 7.1 is now supported.
1565
1566     * amd64 FreeBSD is now supported.
1567
1568   Linux
1569
1570     * Generic fh (exportfs API) cache type is now available.
1571
1572     * Avoid some oopses due to backing_dev_info inode fields not being
1573       filled.
1574
1575     * 2.6.28 is now supported.
1576
1577   MacOS
1578
1579     * 10.3 support has been corrected.
1580
1581   Solaris
1582
1583     * Large partition support has been corrected.
1584
1585     * Filesystem-agnostic cache is now available on Solaris 10 and 11.
1586
1587
1588 OpenAFS 1.5.55 (2009-11-10)
1589
1590   All platforms
1591
1592     * Salvager avoids leaving core files in vice partitions.
1593
1594     * NFS translator fixes.
1595
1596     * Unresponsive server handling fixes.
1597
1598     * A volserver race which could result in duplicate transactions is
1599       fixed.
1600
1601   Microsoft Windows
1602
1603     * Fixes a panic caused by corruption of the SMB virtual circuit list.
1604       (race condition)
1605
1606     * Fixes a panic caused by receipt of a UTF-16 string that cannot be
1607       converted to UTF-8.
1608
1609     * Implements a more aggressive recovery algorithm for Netbios errors
1610       that result in loss of communication to the AFS SMB server.
1611
1612     * Improve pioctl response time when testing whether or not a PATH is
1613       in AFS.
1614
1615     * Adds support for linked cells.
1616
1617     * Increases the length of the cell and realm names that can be input
1618       into the Network Identity Manage AFS provider configuration dialog.
1619
1620   All UNIX client platforms
1621
1622     * Disconnected AFS avoids infinite recursion during rmdir.
1623
1624   Linux
1625
1626     * Support for 2.6.28 (not complete for NFS translator modules).
1627
1628     * Support for using exportfs API for filesystem-agnostic cache.
1629
1630     * Disable backing store readahead.
1631
1632     * Avoid deadlocks when writing back mmapped files larger than the
1633       cache.
1634
1635     * Avoid Oops when doing PAG garbage collection.
1636
1637
1638 OpenAFS 1.5.54 (2008-10-08)
1639
1640   All platforms
1641
1642     * Updates for new Tivoli X/Open API finding.
1643
1644     * A double-free is corrected in Rx.
1645
1646   All server platforms
1647
1648     * Ubik cleans up file descriptor cache correctly when doing recovery.
1649
1650     * Enhanced vldb error checker included.
1651
1652   Microsoft Windows
1653
1654     * Prevent a crash that could occur when multiple file / directory
1655       change notifications are processed simultaneously.
1656
1657   MacOS
1658
1659     * AFS claims more free space so Finder will attempt file copies.
1660
1661   Linux
1662
1663     * Avoid spurious ENOENT when calling gwtcwd() on a volume root.
1664
1665     * Avoid spurious ENOTDIR during fakestat.
1666
1667
1668 OpenAFS 1.5.53 (2008-09-26)
1669
1670   All platforms
1671
1672     * rx avoids many packet leaks.
1673
1674     * rx jumbogram disabling now works (and is the default).
1675
1676   All server platforms
1677
1678     * Demand Attach fileserver tries to avoid issues tracking offline
1679       status of volumes.
1680
1681   Microsoft Windows
1682
1683     * Many potential deadlock conditions due to out of order lock
1684       acquisitions have been corrected.
1685
1686     * A race condition resulting in an undercount on the cm_scache_t
1687       reference counts has been corrected.
1688
1689     * An empty string when sent as an ioctl path is now properly
1690       interpreted as meaning the current directory.  This affects "fs
1691       lsm", "symlink list", etc.
1692
1693     * Fix smb string parsing differences where the smb protocol
1694       documentation does not match the actual Windows implementation.
1695
1696     * Random access denied errors fixed.
1697
1698     * A file server lock synchronization issue was corrected in SMB
1699       NTCreateX and NTTranCreate operations.  This bug prevented properly
1700       operation when loading roaming profiles.
1701
1702     * Fix a heap overwrite error during server probe operations if a new
1703       server is added while a probe operation is in progress.
1704
1705     * Fix an LSA memory leak that was the result of an LSA error.
1706
1707     * Do not leak cm_cell_t objects if the VLDB server lookup fails.
1708
1709     * Only initialize rx mutex/lock objects once.
1710
1711     * Do not nul terminate the AFS volume name when reported to Windows.
1712
1713     * Improve VNOVOL error handling.  Prevent updated vl information from
1714       being destroyed immediately after it was acquired.  This bug
1715       prevented proper fail over when volumes are moved or removed from a
1716       server.
1717
1718     * Remove volume id from the server volume list in response to VMOVED
1719       and VNOVOL errors.
1720
1721     * "fs flushXXX" commands now destroy locally built B+ directory trees.
1722
1723     * Prevent mixture of locally modified directory pages and file server
1724       directory pages.
1725
1726     * Fail over to alternate vl servers if a ubik error is returned.
1727
1728   All UNIX client platforms
1729
1730     * Disconnected AFS now supports read-write mode.
1731
1732     * volserver now builds correctly.
1733
1734   AIX
1735
1736     * AIX 6 is now supported.
1737
1738   FreeBSD
1739
1740     * FreeBSD 7 is now supported.
1741
1742   Linux
1743
1744     * cache bypass is now supported.
1745
1746     * 2.6.x kmod compilation now uses kernel compile options always.
1747
1748     * Support through 2.6.27.
1749
1750   MacOS
1751
1752     * Show more space free so Finder doesn't get confused.
1753
1754   Solaris 10
1755
1756     * Default to namei rather than inode.
1757
1758
1759 OpenAFS 1.5.52 (2008-08-18)
1760
1761   All platforms
1762
1763     * Initialize volume updateDate at volume creation.
1764
1765     * Avoid potential corruption of directories during salvage.
1766
1767     * Check for out of memory condition during allocation of additional Rx
1768       packets.
1769
1770   Microsoft Windows
1771
1772     * Restore support for Windows 2000 (broken in 1.5.50).
1773
1774     * Perform additional validation on volume names in mount points during
1775       creation and evaluation.
1776
1777     * Fix several deadlocks, races, and reference count issues.
1778
1779     * Further optimize SMB Directory Search processing and minimize the
1780       number of InlineBulkStatus RPCs sent to the file server.
1781
1782     * Enable "bos restricted" operations.
1783
1784     * Fix the create of submounts used by the AFSCreds and afs_config
1785       drive mapping tabs.
1786
1787     * Fix a short name truncation bug. (1.5.50)
1788
1789     * Fix the error code reported when attempting to delete a file on a
1790       readonly volume or one that is marked with the readonly DOS
1791       attribute.
1792
1793     * Fix a heap corruption error when reading the CellServDB file
1794       location.
1795
1796     * Add the "RxUdpBufSize" registry value.  The new default is 256KB.
1797
1798     * Do not include trailing NULs in the directory search output.
1799       (1.5.50)
1800
1801     * Pre-allocate 64 Rx Packet buffers per thread in order to improve
1802       performance.
1803
1804     * For debugging: add smb lock requests and stat cache lock allocations
1805       to the output from "fs memdump".
1806
1807   NetBSD
1808
1809     * Workaround broken sigwait() to allow fileserver to shut down
1810       correctly pre NetBSD 5.0.
1811
1812   Solaris 10
1813
1814     * Default to namei fileserver; Allow inode fileserver at configure
1815       time by override.
1816
1817   NFS translator
1818
1819     * Try harder to avoid kernel panics for malformed requests.
1820
1821
1822 OpenAFS 1.5.51 (2008-07-29)
1823
1824   All platforms
1825
1826     * salvager tries harder to arrange for clients to get VBUSY while
1827       salvaging single volumes.
1828
1829     * salvager avoids certain corruption when salvaging directories.
1830
1831     * Rx connection clones disabled.
1832
1833   Microsoft Windows
1834
1835     * The 32-bit EXE 1.5.50 installer failed to properly install the C
1836       Runtime library.  When used as an upgrade OpenAFS would continue to
1837       work but when used as a new installation, OpenAFS binaries would
1838       fail to load.
1839
1840     * Fixes the "fs" and "symlink" commands to properly parse Unicode path
1841       prefixes during the pioctl remote procedure call.  This bug would
1842       result in file not found errors for files and directories that
1843       clearly exist.  (Bug introduced in 1.5.50)
1844
1845     * Large File support is disabled. (Bug introduced in 1.5.50)
1846
1847     * Removes the possibility of a deadlock during volume location update
1848       operation if all of the reported file servers are unreachable at the
1849       time of the update.
1850
1851     * Ensures that reference counts are properly incremented/decremented
1852       on Rx connection objects used for volume location RPCs.
1853
1854     * Over Quota errors during cm_FSync() calls would lead to an infinite
1855       loop as the error was never propagated to the caller.
1856
1857   All UNIX client platforms
1858
1859     * Bugfixes to disconnected AFS support in the cache manager.
1860
1861
1862 OpenAFS 1.5.50 (2008-07-16)
1863
1864   All platforms
1865
1866     * volserver puts recloned volumes back online before returning the
1867       volume to the fileserver, avoiding spurious VNOVOL errors.
1868
1869     * Updated TSM X/Open API support available.
1870
1871     * Demand Attach fileserver will not crash due to accesses during
1872       volume cloning.
1873
1874     * Substantial documentation updates.
1875
1876     * Demand Attach fileserver state tracking and analyzer tool
1877       improvements.
1878
1879     * UAFS userspace cachemanager updates.
1880
1881     * Corrected support for anti-meltdown protection in the client.
1882
1883   Microsoft Windows
1884
1885     * UNICODE Character Set Support.
1886
1887     * Pioctl interfaces to the cache manager have been refactored to
1888       provide layering between the SMB specific code and the general
1889       purpose ioctl operation.
1890
1891     * Garbage collect dead SMB virtual circuits as soon as they are no
1892       longer being referenced.  This avoids problems with outstanding
1893       locks not being dropped when the virtual circuit becomes invalid.
1894
1895     * Remove the IBM Administration Reference documentation and replace it
1896       with the OpenAFS Command Reference Manual.
1897
1898     * Avoid calling rx_SetDeadTime and rx_SetHardDeadTime functions each
1899       time a connection is about to be used.  Do not hold a lock on the rx
1900       connection object while it is being selected.  This avoids a race
1901       between threads attempting to set the timeout values and removes a
1902       bottleneck that was hampering performance.
1903
1904     * Ensure that the smb directory attribute is set for all directory
1905       objects.
1906
1907     * Replace the VC Runtime EXE installer with the MSI installer in the
1908       NSIS installer scripts.
1909
1910   Solaris
1911
1912     * Support for updates to OpenSolaris.
1913
1914   Linux
1915
1916     * Correct dentry revalidation for cross-directory renames.
1917
1918     * Updated rpm packaging materials for 1.5 release series and 2.4
1919       kernels.
1920
1921     * Corrected syscall table probing.
1922
1923     * NFS translator updates for current kernels.
1924
1925
1926 OpenAFS 1.5.39 (2008-06-24)
1927
1928   All platforms
1929
1930     * Updates for Demand Attach fileserver.
1931
1932   Microsoft Windows
1933
1934     * Fix two memory leaks.
1935
1936     * Fix one missing lock.
1937
1938     * Handle access denied errors when writing dirty buffers.
1939
1940     * Fix two errors that would cause the *experimental* AFS Servers
1941       to crash.
1942
1943
1944 OpenAFS 1.5.38 (2008-05-24)
1945
1946   All platforms
1947
1948     * Add read-only disconnected support.
1949
1950
1951 OpenAFS 1.5.37 (2008-05-21)
1952
1953   All platforms
1954
1955     * Includes a number of optimizations for testing.
1956
1957
1958 OpenAFS 1.5.36 (2008-05-09)
1959
1960   All platforms
1961
1962     * Rx optimizations now attempt to deal with high latency WANs.
1963
1964     * Client will not wait infinitely for a server which is not providing
1965       data.  Additional servers will be polled without marking the server
1966       which is not providing data down.
1967
1968     * vos move will not erroneously unlock locked vldb entries on failure.
1969
1970   All server platforms
1971
1972     * Fileserver avoids a potential infinite loop when a client
1973       relinquishes an address.
1974
1975     * Fileserver large setting now configures more threads.
1976
1977     * Fileserver properly registers uuids of new clients.
1978
1979     * Ubik servers do not improperly hide updates from clients.
1980
1981     * Fileservers reserve enough file descriptors such that each thread
1982       can cache one to avoid spurious errors.
1983
1984   Microsoft Windows
1985
1986     * Fix a cm_buf_t reference count leak when attempts to write dirty
1987       buffers to the file server from within cm_IncrSyncer() fail.
1988
1989     * Prevent udebug from crashing.
1990
1991     * Another VNOVNODE issue fixed.  When writing a dirty buffer to the
1992       file server, if VNOVNODE is received, mark all buffers as invalid
1993       without further attempts to contact the file server.
1994
1995
1996 =======> Changes back to 1.3 have not yet been incorporated here <=======
1997
1998
1999 OpenAFS 1.3
2000
2001   * -nosettime is now the default for afsd.  Use "-settime" to get the
2002     old behavior.
2003
2004   * OpenBSD is now supported.
2005
2006   * Mountpoint directory information is now only faked for cross-cell
2007     mountpoints when using the -fakestat flag (e.g. for the directories
2008     under /afs, but not for most other volumes mounted inside the cell).
2009     The -fakestat-all switch can be used to fake information for all
2010     mountpoints.
2011
2012   * When fakestat is enabled on MacOSX, the Finder can be used to browse
2013     a fully-populated /afs directory.  However, this precludes reliable
2014     use of entire volumes as MacOS bundles (i.e. containing a Contents
2015     directory in the root of the volume).
2016
2017   * Mountpoint directory information can be faked by the cache manager,
2018     making operations such as stat'ing all cells under /afs much faster.
2019     This is enabled by passing -fakestat to afsd, but might not be stable
2020     on all platforms.
2021
2022
2023 OpenAFS 1.2.9
2024
2025   * The kaserver now defaults to not allowing interrealm authentication,
2026     due to security vulnerabilities in the krb4 protocol.  The new
2027     "-crossrealm" flag to the kaserver is provided to reenable interrealm
2028     authentication if desired.
2029
2030   * RedHat Linux 9.0 is now supported.
2031
2032   * Solaris 9 12/02 is now supported.  Solaris 7 and 8 x86 should now
2033     work again.
2034
2035   * On Linux machines using 2.2 series kernels, 2.2.19 or higher is now
2036     required.
2037
2038   * An OpenAFS 1.2.9 afsd will not work with kernel modules built from
2039     an earlier OpenAFS release.  In general, using a mismatched afsd and
2040     kernel modules set is unsupported; it is not recommended that you use
2041     such a configuration on a regular basis.
2042
2043
2044 OpenAFS 1.2.8
2045
2046   * Mountpoint directory information is now only faked for cross-cell
2047     mountpoits when using the -fakestat flag (e.g. for the directories
2048     under /afs, but not for most other volumes mounted inside the cell).
2049     The -fakestat-all switch can be used to fake information for all
2050     mountpoints.
2051
2052   * HPUX 11.0 is now supported.
2053
2054   * It is now possible for AFS to use Kerberos 5 directly, via rxkad 2b.
2055     See the OpenAFS 1.2.8 Release Notes for more information on using this
2056     capability.
2057
2058   * An NFS translator kernel module is now included and compiled by
2059     default for Solaris only.
2060
2061
2062 OpenAFS 1.2.7
2063
2064   * MacOS X 10.2 is now supported.  FreeBSD 4.3 and later support is
2065     included in this release, but is still under active development and
2066     should only be used by those doing active development on the OpenAFS
2067     FreeBSD client.
2068
2069   * When fakestat is enabled on MacOSX, the Finder can be used to browse a
2070     fully-populated /afs directory.  However, this precludes reliable use
2071     of entire volumes as MacOS bundles (i.e. containing a Contents
2072     directory in the root of the volume).
2073
2074   * The fileserver will now use Rx pings to determine if clients are
2075     reachable prior to allocating resources to them, to prevent asymmetric
2076     clients from consuming all fileserver resources.
2077
2078
2079 OpenAFS 1.2.6
2080
2081   * Mountpoint directory information can be faked by the cache manager,
2082     making operations such as stat'ing all cells under /afs much faster.
2083     This is enabled by passing -fakestat to afsd.
2084
2085   * Solaris 9 FCS and Solaris 7 and 8 x86 are now supported.
2086
2087
2088 OpenAFS 1.2.5
2089
2090   * A remote denial of service attack in the AIX and IRIX clients has been
2091     fixed.  Users of those platforms are strongly encouraged to upgrade.
2092
2093   * Fixed race conditions in fileserver that could result in crash.
2094
2095
2096 OpenAFS 1.2.4
2097
2098   * Server logfiles now more consistant about format in which hosts are
2099     referred to.
2100
2101   * vfsck on Solaris will now allow force runs (using -y flag) even if old
2102     inodes exist.
2103
2104
2105 OpenAFS 1.2.3
2106
2107   * Cell aliases for dynroot can be specified in the CellAlias file in
2108     /usr/vice/etc or /usr/local/etc/openafs, in format "realname alias",
2109     one per line.  They can also be managed at runtime with "fs newalias"
2110     and "fs listaliases".
2111
2112
2113 OpenAFS 1.2.2
2114
2115   * Solaris 9 and Linux PA-RISC are now supported.
2116
2117   * fileserver will not erroneously delay legitimate errors for 3 seconds
2118     after 10 errors are returned (e.g. stat() on a directory you can't
2119     read).
2120
2121   * Rx MTU calculation now works for Irix, Solaris and Linux
2122
2123   * If afsd is started with the -dynroot flag, /afs will be locally
2124     generated from the CellServDB.  AFSDB cells will be mounted
2125     automatically upon access.
2126
2127   * The namei fileserver allows vice "partitions" to be directories
2128     instead of partitions and will attach and display accordingly.
2129     Creating the file "AlwaysAttach" in the /vicepX directory is used as
2130     the trigger to attach it.
2131
2132   * TSM support for butc no longer requires editing a Makefile, simply
2133     specify the --enable-tivoli-tsm configure option.
2134
2135   * Linux builds no longer require source changes every time the kernel
2136     inode structure changes; the OpenAFS sources will now configure itself
2137     to the actual inode structure as defined in the kernel sources.
2138
2139
2140 OpenAFS 1.2.1
2141
2142   * vfsck on Digital UNIX and Solaris will now refuse to fsck mounted
2143     mounted partitions.
2144
2145
2146 OpenAFS 1.2.0
2147
2148   * AFS now supports --prefix and the other directory options of
2149     configure.  By default AFS builds assuming it will be installed in
2150     /usr/local.  In order to get traditional AFS directory paths (/usr/afs
2151     and /usr/vice/etc) use the --enable-transarc-paths option to
2152     configure.  More details on the new directory layout are found in
2153     README.
2154
2155
2156 OpenAFS 1.1.1a
2157
2158   * Windows 95/98/ME/NT/2000 - Consistent versioning:  Installation, AFS
2159     Control Center, Client dialog boxes and properties pages for
2160     executables display a consistent OpenAFS version number.  Installation
2161     detects previous installation and prompts the user for upgrade
2162     options.
2163
2164   * Windows 95/98/ME/NT/2000 - Installation features:  During installation
2165     the user can select the source of the CellservDB file, AFS home cell,
2166     and drive mappings.  During installation a drive path mapping can
2167     include a variable that will be substituted with the current UserName
2168     that is logged in.
2169
2170   * Windows 2000/NT - Integrated logon:  The Integrated Logon feature
2171     works now.
2172
2173   * Windows 95/98/ME - Logon script features:  The Windows 95/98/ME client
2174     now offers a command-line option for starting up the AFS client
2175     without authenication. It is now possilbe to start the AFS client
2176     first and obtain tokens, and map drives all through Windows scripts.
2177     This helps using Windows 95/98/ME client in Kerberos 5 environment.
2178
2179   * Windows 2000/NT - LANA numbers:  AFS client now scans the LANA numbers
2180     to establish the correct NETBIOS connection.  NetBEUI is no longer
2181     needed.  The user no longer needs to find the correct LANA number.
2182
2183   * Windows 2000/NT - OpenAFS naming consistancy:  Further progress has
2184     been made to remove references to "Transarc AFS" and replace with
2185     "OpenAFS".
2186
2187
2188 OpenAFS 1.0
2189
2190   * AFS now builds with configure. The README for building has been
2191     updated and includes full details.
2192
2193   * A client system can now have multiple sysname values for @sys.  They
2194     will be searched in order when looking up files in AFS.  The
2195     -newsysname argument to fs sysname can be repeated to set multiple
2196     sysnames.
2197
2198   * A new system group is created for new cells (system:ptsviewers with id
2199     -203).  If this group exists, members of this group can examine and
2200     read the entire protection database.  They can examine all users and
2201     groups and can get the membership of any group.
2202
2203   * A new program, pt_util has been added to the distribution.  This
2204     program allows users to print the contents of the protection database
2205     or to edit the protection database without running a ptserver.  It can
2206     be used to set up a new cell without ever running in noauth mode.  Run
2207     pt_util -h for help.
2208
2209   * The fs setcrypt and fs getcrypt commands have been added.  These
2210     commands allow the system administrator to require that the client
2211     encrypt all authenticated traffic between the client workstation and
2212     AFS.  The encryption used is weak, but is likely better than sending
2213     unencrypted traffic in most environments.  Some functions, such as
2214     looking for a volume may not be encrypted, but data transfer certainly
2215     is.  By default data is not encrypted.  At this time no significant
2216     experimentation with server performance has been conducted.
2217
2218   * By default AFS is compiled with AFS_AFSDB_ENV, enabling the -afsdb
2219     option to be given to afsd on startup.  If this option is used, then
2220     new cells will be looked up using AFSDB records stored in DNS if they
2221     are not found in CellServDB.  This means that users can create
2222     cross-cell mountpoints in directories they control to access cells not
2223     in root.afs, and that cells in root.afs need not be in the client's
2224     CellServDB.
2225
2226   * AFS database servers can be marked as read-only clones.  Surround the
2227     hostname in square brackets on the bos addhost command and the
2228     database server will never be elected sync site.  This is useful for
2229     cells distributed over a wide region.
2230
2231   * The AFS servers now support the -syslog flag.  This flag causes them
2232     to log to syslog rather than to files.  This flag is not supported on
2233     NT.  For all servers besides the salvager, the flag can also be
2234     specified as -syslog=facility, where facility is an integer facility
2235     code from syslog.h.  A -syslogfacility option is provided for the
2236     salvager to accomplish the same goal.
2237
2238   * If the --enable-fast-restart flag is given when configuring AFS, then
2239     the salvager supports the -dontsalvage flag which causes it to exit
2240     without salvaging any volumes.  If this is configured into the third
2241     command of a fs process, then the fileserver will start without
2242     salvaging.  It will fail to attach volumes that need salvaging and
2243     they can be salvaged manually.  This provides significantly better
2244     server startup performance at the cost of administrative complexity.
2245
2246   * If the --enable-bitmap-later flag is given when configuring AFS, then
2247     the fileserver creates bitmaps for free vnodes on demand, allowing
2248     faster starts.
2249
2250   * If bosserver finds a BosConfig.new file at startup, it reads this file
2251     and renames it to BosConfig.  This allows bosserver to be reconfigured
2252     at next restart.
2253
2254   * The bosserver can be placed in a restricted mode in which AFS
2255     superusers are only granted limited access to the server host. The
2256     following functionality is disabled when restricted mode is in use:
2257
2258       bos exec
2259       bos getlog (except for files with no '/'s in their name)*
2260       bos create *
2261       bos delete
2262       bos install
2263       bos uninstall
2264
2265     specific exceptions are made for functionality that "bos salvage"
2266     uses:
2267
2268     A cron bnode who's name is "salvage-tmp", time is now, and command
2269     begins with "/usr/afs/bin/salvager" may be created. This bnode deletes
2270     itself when complete, so no special "delete" support is needed.  This
2271     functionality may be removed in the future if a "Salvage" RPC is
2272     implimented.
2273
2274     The file with the exact path /usr/afs/logs/SalvageLog may be fetched,
2275     since that is how bos salvage [...] -showlog is implimented.
2276
2277     Restricted mode is enabled using a new bos command (bos setrestricted)
2278     or bossever command line switch (bosserver -restricted). Restricted
2279     mode can be disabled by a) sending the bosserver process a SIGFPE
2280     (which will then allow restricted operations until the next restart or
2281     setrestricted command) or b) editing /usr/afs/local/BosConfig (or
2282     BosConfig.new), and restarting the bosserver.
2283
2284   * The bos UserList of trusted administrators can now contain cross-realm
2285     Kerberos principals.
2286
2287   * udebug now takes --server not --servers.
2288
2289   * Several error messages have been improved to include volume numbers.
2290
2291   * Several new ports have been included for UNIX platforms: Darwin
2292     (ppc_darwin_12 and ppc_darwin_13), Linux 2.4 (i386_linux24), Linux on
2293     the Powerpc (ppc_linux22 and ppc_linux24), Linux on the Sparc
2294     (sparc_linux22, sparc64_linux22 and sparc64_linux24).
2295
2296   * Incomplete FreeBSD and Alpha Linux ports are included.  The FreeBSD
2297     port has a working server and the Alpha Linux port has a partially
2298     working client.
2299
2300   * A native client for Windows 95/98/ME has been added to the
2301     distribution.  With this program, a gateway machine is no longer
2302     required for Windows 9x to access AFS files.  One drive letter will be
2303     created on your machine by default - Z:.  The Z: drive will be the
2304     root of the AFS tree, allowing you to browse all sites that have AFS
2305     servers available.  Additional drive letters can be defined for other
2306     AFS directories.  A Windows Explorer shell extension is included that
2307     allows you to right click on items within an AFS tree to bring up an
2308     "AFS" menu item and perform various operations on a file or directory.
2309     The most useful item is "Access Control Lists", which allows you to
2310     view and edit the permissions of a particular directory.  Command line
2311     tools are also available in the install directory.  These commands
2312     include klog, unlog, tokens, kpasswd, symlink, fs and pts.  The
2313     installable includes a readme file that contains more information on
2314     how to use the client program and known issues.
2315
2316   * Support for large caches in afsd.  Cachefiles are stored in
2317     subdirectories.  The default is 2048 files per subdirectory, which
2318     should work fine in most situations.  You can use the new afsd option
2319     -files_per_subdir to change this number.  Note that the first time you
2320     run afsd with this patch, your cachefiles will get moved into
2321     subdirectories.  If you subsequently run an older version of afsd, you
2322     will lose all your cached files.