From: Jeffrey Altman Date: Fri, 22 Jun 2007 15:40:12 +0000 (+0000) Subject: DEVEL15-windows-release-notes-20070622 X-Git-Tag: openafs-devel-1_5_21~44 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=dc3d4c382e31543f9d4017b9e6415ae037e21798;p=packages%2Fo%2Fopenafs.git DEVEL15-windows-release-notes-20070622 release notes for what should be 1.5.21. ==================== This delta was composed from multiple commits as part of the CVS->Git migration. The checkin message with each commit was inconsistent. The following are the additional commit messages. ==================== another fix for index.htm. point at relnotes_frames.htm instead of frames.htm --- diff --git a/src/WINNT/doc/install/Documentation/en_US/html/ReleaseNotes/logo.htm b/src/WINNT/doc/install/Documentation/en_US/html/ReleaseNotes/logo.htm index 0413f3b9e..5b77470e5 100644 --- a/src/WINNT/doc/install/Documentation/en_US/html/ReleaseNotes/logo.htm +++ b/src/WINNT/doc/install/Documentation/en_US/html/ReleaseNotes/logo.htm @@ -18,7 +18,7 @@ w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} -OpenAFS for Windows 1.5.20 Release Notes +OpenAFS for Windows 1.5.21 Release Notes -OpenAFS for Windows 1.5.20 Release Notes +OpenAFS for Windows 1.5.21 Release Notes Jeffrey Altman - 2 - 744 + 3 + 787 2006-11-29T17:26:00Z - 2006-12-18T23:20:00Z - 1 - 16067 - 91587 + 2007-06-22T13:42:00Z + 38 + 17429 + 99346 Secure Endpoints Inc. - 763 - 214 - 107440 + 827 + 233 + 116542 11.8132 -
-

OpenAFS for Windows 1.5.20
+

OpenAFS for Windows 1.5.21
Release Notes

The Andrew File System (AFS) is a location-independent @@ -639,9 +646,9 @@ none;text-underline:none'>. 2

Operational Notes. 2

-

4. How to Debug -Problems with OpenAFS for Windows: 11

+

4. How to +Debug Problems with OpenAFS for Windows: 11

5. Reporting Bugs: 13

Contribute to the Development of OpenAFS for Windows. 14

-

7. MSI Deployment -Guide. 15

+

7. MSI +Deployment Guide. 15

Appendix A: Registry Values. 26

-

1. Installer Options

It can be installed either as a new installation or an @@ -671,24 +678,25 @@ Windows.  Installers are provided in two forms:

1.        -an executable (.exe) that is built using the Nullsoft Scriptable -Installation System, or

+an executable (.exe) that is built using the Nullsoft Scriptable Installation System, or

2.        -a Windows Installer package (.msi) that is built using WiX and can be -customized for organizations via the use of MSI Transforms (see a Windows Installer package (.msi) that is built using WiX and +can be customized for organizations via the use of MSI Transforms (see MSI Deployment Guide)

-

2. System Requirements

-

2.1 Supported Operating Systems

@@ -732,9 +740,9 @@ style='font-size:9.0pt;font-family:Symbol'> font-family:"Times New Roman"'>       Microsoft Windows Vista (32-bit and 64-bit Intel)

-

2.1.1 Unsupported Operating Systems

-

2.2 Disk Space

Up to 60mb required for the OpenAFS binaries plus 100MB for -the default AFSCache file.   (The size of the AFSCache file may be -adjusted via the Registry after installation.)

+the default AFSCache file.   (The size of +the AFSCache file may be adjusted via the Registry +after installation.)

-

2.3 Additional Software Packages

MIT -Kerberos for Windows 2.6.x or 3.1.x if Kerberos v5 authentication support -is desired.

+Kerberos for Windows 2.6.x or 3.1.x if Kerberos v5 authentication support is +desired.

-

3. Operational Notes

-

3.1. Requirements for Kerberos v5 Authentication

The Kerberos v4 infrastructure on which the OpenAFS 1.2 series is reliant is no longer secure.  Cross-realm Kerberos is very -important in the AFS context and most sites have or are migrating to Kerberos v5 -environments.  The OpenAFS 1.4 series (and later) integrates with MIT Kerberos for Windows 2.6.5 and above to support Kerberos v5 authentication including automatic renewal of AFS tokens and single sign-on via the Microsoft Windows Kerberos Logon -Service.   

+Service.  

The recommended version of MIT Kerberos for Windows is 3.2.  KFW 3.2 includes Network Identity Manager 1.2 +href="http://web.mit.edu/kerberos/">MIT Kerberos for Windows is 3.2.  KFW 3.2 includes Network Identity Manager 1.2 which integrates with the AFS Provider -installed as part of OpenAFS for Windows.  

+installed as part of OpenAFS for Windows.  +

When KFW is installed, the OpenAFS for Windows client will obtain Kerberos v5 tickets and use them as tokens without modification.  @@ -822,12 +830,13 @@ The OpenAFS client requires that all of the AFS Servers with which it communicates support the use of Kerberos v5 tickets as tokens. If Kerberos v5 based tokens are presented to an AFS server that does not support them, the server will be unable to communicate with the client when tokens are present. -Kerberos v5 based tokens are supported by OpenAFS release 1.2.8 or later.  IBM Transarc servers do not support Kerberos v5.

+Kerberos v5 based tokens are supported by OpenAFS release 1.2.8 or later.  IBM Transarc +servers do not support Kerberos v5.

-

3.1.1. Active Directory

Microsoft Windows Active Directory can be used as a Kerberos @@ -838,14 +847,15 @@ tickets issued by Active Directory can be quite large when compared to tickets issued by a traditional KDC due to the incorporation of authorization data (the Microsoft PAC).  If the issued tickets are larger than 344 bytes, the OpenAFS 1.2 servers will be unable to process them and will issue a -RXKADBADTICKET error.  OpenAFS 1.4 (and beyond) -servers can support the largest tickets that Active Directory can issue.  -Second, the Kerberos v5 tickets issued by Windows 2003 Active Directory are -encrypted with the DES-CBC-MD5 encryption type (enctype).  OpenAFS 1.2 -servers only support the DES-CBC-CRC enctype.  +RXKADBADTICKET error.  OpenAFS 1.4 (and +beyond) servers can support the largest tickets that Active Directory can +issue.  Second, the Kerberos v5 tickets issued by Windows 2003 Active +Directory are encrypted with the DES-CBC-MD5 encryption type (enctype).  OpenAFS 1.2 servers only support the +DES-CBC-CRC enctype.  As a result, OpenAFS 1.2 servers cannot process the resulting Kerberos v5 tokens.  Windows 2000 Active Directory -issued tickets with the DES-CBC-CRC enctype.

+issued tickets with the DES-CBC-CRC enctype.

Microsoft has documented in Knowledge Base article 832572 @@ -856,21 +866,22 @@ style='mso-spacerun:yes'> accounts that are associated with non-Windows services and that do not understand the authorization data stored in the PAC.

-

3.1.2. Using the krb524 service

Some organizations which have AFS cell names and Kerberos realm names which differ by more then just lower and upper case rely on a -modification to krb524d which maps a Kerberos v5 ticket from realm FOO to a Kerberos -v4 ticket in realm BAR.  This allows user@FOO to appear to be user@bar for -the purposes of accessing the AFS cell.  As of OpenAFS 1.2.8, support was -added to allow the immediate use of Kerberos v5 tickets as AFS (2b) tokens. -This is the first building block necessary to break away from the limitations -of Kerberos v4 with AFS.  By using Kerberos v5 directly we avoid the -security holes inherent in Kerberos v4 cross-realm.  We also gain access -to cryptographically stronger algorithms for authentication and encryption.

+modification to krb524d which maps a Kerberos v5 ticket from realm FOO to a +Kerberos v4 ticket in realm BAR.  This allows user@FOO +to appear to be user@bar for the purposes of +accessing the AFS cell.  As of OpenAFS 1.2.8, support was added to allow +the immediate use of Kerberos v5 tickets as AFS (2b) tokens. This is the first +building block necessary to break away from the limitations of Kerberos v4 with +AFS.  By using Kerberos v5 directly we avoid the security holes inherent +in Kerberos v4 cross-realm.  We also gain access to cryptographically +stronger algorithms for authentication and encryption.

Another reason for using Kerberos v5 directly is because the krb524 service runs on a port (4444) which has become increasingly blocked by @@ -887,9 +898,9 @@ to force the use of krb524d.  However, the availability of this option should only be used by individuals until such time as their organizations can provide a more permanent solution.

-

3.1.3. Network Identity Manager Provider

+

3.1.3. Network Identity Manager Provider

As of release 1.5.9, OpenAFS for Windows includes a Network Identity Manager Provider for obtaining AFS tokens.MIT Kerberos for Windows version 3.1 or above.  Version 3.2 is required for the best user experience.

-

+src="relnotes_files/image002.jpg" v:shapes="_x0000_i1025">

The Network Identity Manager replaces the former KFW ticket manager, Leash”, and when combined with the OpenAFS Provider, it is intended to @@ -937,23 +948,23 @@ Tool, Network Identity Manager with the OpenAFS Provider can easily manage AFS tokens for multiple cells from one or more Kerberos v5 identities.

+src="relnotes_files/image004.jpg" v:shapes="_x0000_i1026">

The AFS configuration panel for each Kerberos v5 identity is used to configure which cells credentials should be obtained for and how they should be obtained.  If the cell to realm -mapping cannot be automatically determined, it can be explicitly -specified.  If the cell does not support Kerberos -v5 tickets as tokens, then a krb524 service can be configured.

+mapping cannot be automatically determined, it can be explicitly specified.  If the cell does not support Kerberos v5 +tickets as tokens, then a krb524 service can be configured.

+src="relnotes_files/image006.jpg" v:shapes="_x0000_i1027">

The OpenAFS Provider configuration panel can be used to check the status of the AFS Client Service and its version.   A shortcut to the OpenAFS Control Panel is also provided.

-

3.2. Use of the Microsoft Loopback Adapter by the AFS Client Service

@@ -1022,99 +1033,107 @@ no longer required to be unique.  Instead the NETBIOS name associated with the AFS Client Service is simply "AFS" and portable UNC paths of the form \\AFS\cellname\path can now be used on all machines.

-

3.3. Using Freelance (Dynamic Root) Mode to Improve Mobility

Traditionally, when the OpenAFS Client Service starts it -must be able to access the "root.afs" volume of the default -cell.  The "root.afs" volume contains the set of mount points to -the "root.cell" volumes of various cells the administrator of the -default cell believes should be accessible.  If the "root.afs" +must be able to access the "root.afs" +volume of the default cell.  The "root.afs" +volume contains the set of mount points to the "root.cell" +volumes of various cells the administrator of the default cell believes should +be accessible.  If the "root.afs" volume is inaccessible when the client service is started, the service will terminate unexpectedly.  Since many users now use laptops or otherwise operate in disconnected environments in which a VPN may be required to access -the cell's servers, it is often the case that the "root.afs" volume -for the default cell is not reachable and the OpenAFS Client Service will not -successfully start.

+the cell's servers, it is often the case that the "root.afs" +volume for the default cell is not reachable and the OpenAFS Client Service +will not successfully start.

To allow the OpenAFS Client Service to operate in these -environments, Freelance mode dynamically constructs a fake "root.afs" -volume from mount points and symlinks stored in the local registry.

- -

The content of the fake “root.afs” volume is dynamically -modified as cells are accessed.  When the fake "root.afs" volume -is initially constructed it will only contain two mount points: a regular -path and read-write path mount point used to access the -"root.cell" volume of the default AFS cell.  Any attempt to access -a valid cell name will result in a new mount point being created in the fake -"root.afs" volume.  If the cellname begins with a "." -the mount point will be a read-write path; otherwise the mount point -will be a regular path.  These mount points are preserved in the -registry at key:

+environments, Freelance mode dynamically constructs a fake "root.afs" volume from mount points and symlinks stored +in the local registry.

+ +

The content of the fake “root.afs” +volume is dynamically modified as cells are accessed.  When the fake +"root.afs" volume is initially constructed +it will only contain two mount points: a regular path and read-write +path mount point used to access the "root.cell" +volume of the default AFS cell.  Any attempt to access a valid cell name +will result in a new mount point being created in the fake "root.afs" volume.  If the cellname +begins with a "." the mount point will be a read-write path; +otherwise the mount point will be a regular path.  These mount +points are preserved in the registry at key:

HKLM\SOFTWARE\OpenAFS\Client\Freelance

Additional mount points may be manually created using the -"fs mkmount" command.  Mount points may be removed using the -"fs rmmount" command.

+"fs mkmount" +command.  Mount points may be removed using the "fs +rmmount" command.

-

>fs mkmount -\\AFS\athena.mit.edu root.cell athena.mit.edu

+

>fs +mkmount \\AFS\athena.mit.edu root.cell +athena.mit.edu

-

>fs mkmount -\\AFS\.athena.mit.edu root.cell athena.mit.edu -rw

+

>fs +mkmount \\AFS\.athena.mit.edu root.cell +athena.mit.edu -rw

-

>fs rmmount -\\AFS\athena.mit.edu

+

>fs +rmmount \\AFS\athena.mit.edu

-

>fs rmmount -\\AFS\.athena.mit.edu

+

>fs +rmmount \\AFS\.athena.mit.edu

-

Symlinks may also be created within the Freelance “root.afs” -volume.

+

Symlinks may also be created within the Freelance “root.afs” volume.

-

>symlink make -\\afs\link \\afs\athena.mit.edu\user\j\a\jaltman

+

>symlink +make \\afs\link \\afs\athena.mit.edu\user\j\a\jaltman

-

      >symlink list -\\afs\link

+

      >symlink list \\afs\link

-

      '\\afs\link' is a -symlink to 'athena.mit.edu\user\j\a\jaltman'

+

      '\\afs\link' +is a symlink to 'athena.mit.edu\user\j\a\jaltman'

-

>symlink rm \\afs\link

+

>symlink +rm \\afs\link

The symlinks are stored in the registry at:

HKLM\SOFTWARE\OpenAFS\Client\Freelance\Symlinks 

-

3.4. Locating AFS Volume Database Servers via DNS

The OpenAFS for Windows client will use DNS AFSDB records to discover the location of AFS Volume Database servers when entries for the cell -are not present in the client's CellServDB file -(\%PROGRAMFILES%\OpenAFS\Client\CellServDB).

+are not present in the client's CellServDB file +(\%PROGRAMFILES%\OpenAFS\Client\CellServDB).

-

3.5. Obtaining AFS Tokens as a Integrated Part of Windows Logon

-

OpenAFS for Windows installs a WinLogon Network Provider to -provide Single Sign-On functionality (aka Integrated Logon.)  Integrated -Logon can be used when the Windows username and password match the username and -password associated with the default cell's Kerberos realm.  For example, -if the Windows username is "jaltman" and the default cell is +

OpenAFS for Windows installs a WinLogon +Network Provider to provide Single Sign-On functionality (aka Integrated +Logon.)  Integrated Logon can be used when the Windows username and +password match the username and password associated with the default cell's +Kerberos realm.  For example, if the Windows username is "jaltman" and the default cell is "athena.mit.edu", then Integrated Logon can be successfully used if the windows password matches the password assigned to the Kerberos principal "jaltman@ATHENA.MIT.EDU".  @@ -1128,9 +1147,9 @@ passwords.

When KFW is configured, Integrated Logon will use it to obtain tokens. Use of KFW for Integrated Logon can be disabled via the EnableKFW registry value.  Use of the krb524 service can be configured -via the Use524 registry value.

+href="#_Value:_EnableKFW">EnableKFW registry +value.  Use of the krb524 service can be +configured via the Use524 registry value.

Integrated Logon will not preserve the Kerberos v5 tickets. KFW 3.1 and above implements that functionality.

@@ -1141,27 +1160,28 @@ Kerberos KDC is inaccessible at logon time.

Integrated Login supports the ability to obtain tokens for multiple cells.  For further information on how to configure this feature -read about the TheseCells +read about the TheseCells value.

-

3.6. AFS System Tray Command Line Options

The AFS System Tray Tool -(afscreds.exe) has been deprecated in favor of Network Identity Manager.  afscreds.exe will be removed from the OpenAFS +(afscreds.exe) has been deprecated in favor of Network Identity Manager.  afscreds.exe will be removed from the OpenAFS in a future release.

-

The AFS System Tray tool (afscreds.exe) supports several -command line options:

+

The AFS System Tray tool (afscreds.exe) supports several command +line options:

-

    -A = autoinit

+

    -A = autoinit +

-

    -E = force existing afscreds to -exit

+

    -E = force existing afscreds to exit

    -I = install startup shortcut

@@ -1172,8 +1192,8 @@ exit

    -Q = quiet mode.  do not display start service dialog

-

         if -afsd_service is not already running

+

         if afsd_service is not already running

    -S = show tokens dialog on startup

@@ -1181,15 +1201,16 @@ afsd_service is not already running

    -X = test and do map share

-

    -Z = unmap drives

+

    -Z = unmap +drives

-

autoinit will result in automated attempts to acquire AFS -tokens when afscreds.exe is started.  afscreds.exe will attempt to utilize -tickets stored in the MSLSA credentials cache; any existing CCAPI credentials -cache; and finally display an Obtain Tokens dialog to the user.  When used -in combination with IP address change detection, afscreds.exe will attempt to acquire -AFS tokens whenever the IP address list changes and the Kerberos KDC is -accessible.

+

autoinit will result in automated +attempts to acquire AFS tokens when afscreds.exe is started.  afscreds.exe +will attempt to utilize tickets stored in the MSLSA credentials cache; any +existing CCAPI credentials cache; and finally display an Obtain Tokens dialog +to the user.  When used in combination with IP address change detection, +afscreds.exe will attempt to acquire AFS tokens whenever the IP address list +changes and the Kerberos KDC is accessible.

The renew drive maps option is used to ensure that the user drive maps constructed via the OpenAFS tools (not NET USE) are re-constructed @@ -1199,64 +1220,73 @@ each time afscreds.exe is started.

installers to use “-A -N -M -Q” as startup options.  Currently, there is no user interface to change this selection after install time although these options may be altered via the registry on either per machine or per user -basis.  See AfscredsShortcutParams -in Appendix A.

+basis.  See AfscredsShortcutParams in Appendix A.

-

3.7. -The “AFS Client Admins” Authorization Group

+The “AFS Client Admins” Authorization Group

The OpenAFS for Windows client supports a local Windows -authorization group named "AFS Client Admins".  This group is -used in place of the "Administrators" group to determine which users -are allowed to modify the AFS Client Service configuration via the AFS Control -Panel (afs_config.exe) or fs.exe command line tool.  The following fs.exe -commands are now restricted to members of the "AFS Client Admins" -group:

+authorization group named "AFS Client Admins".  +This group is used in place of the "Administrators" group to +determine which users are allowed to modify the AFS Client Service +configuration via the AFS Control Panel (afs_config.exe) or fs.exe command line +tool.  The following fs.exe commands are now restricted to members of the +"AFS Client Admins" group:

·       checkservers -with a non-zero timer value

+font-family:"Times New Roman"'>       checkservers with a non-zero timer value

·       setcachesize

+font-family:"Times New Roman"'>       setcachesize

·       newcell

+font-family:"Times New Roman"'>       newcell

·       sysname -with a new sysname list

+font-family:"Times New Roman"'>       sysname with a new sysname list

·       exportafs

+font-family:"Times New Roman"'>       exportafs

·       setcell

+font-family:"Times New Roman"'>       setcell

·       setserverprefs

+font-family:"Times New Roman"'>       setserverprefs

·       storebehind

+font-family:"Times New Roman"'>       storebehind

·       setcrypt

+font-family:"Times New Roman"'>       setcrypt

·       cscpolicy

+font-family:"Times New Roman"'>       cscpolicy

·       trace

·       minidump

- -

The creation or removal of mount points and symlinks in the Freelance -“root.afs” volume are also restricted to members of the “AFS Client Admins” -group.

- -

The initial membership of the "AFS Client Admins" -group when created by the installer is equivalent to the local -"Administrators" group.  If a user is added to the -"Administrators" group after the creation of the "AFS Client -Admin" group, that user will not be an AFS Client Administrator.  -Only users that are members of the "AFS Client Admins" group are AFS -Client Administrators.  The local "SYSTEM" account is an implicit -member of the "AFS Client Admins" group.

- -

Setting the default sysname for a machine should be done via -the registry and not via "fs -sysname".

- -

       minidump

+ +

The creation or removal of mount points and symlinks in the +Freelance “root.afs” volume are also restricted to +members of the “AFS Client Admins” group.

+ +

The initial membership of the "AFS Client Admins" group when created by the installer is +equivalent to the local "Administrators" group.  If a user is +added to the "Administrators" group after the creation of the +"AFS Client Admin" group, that user will not be an AFS Client +Administrator.  Only users that are members of the "AFS Client Admins" group are AFS Client Administrators.  The +local "SYSTEM" account is an implicit member of the "AFS Client Admins" group.

+ +

Setting the default sysname for a +machine should be done via the registry and not +via "fs sysname".

+ +

3.8. OpenAFS support for UNC paths

The OpenAFS client supports UNC paths everywhere.  UNC paths provide a canonical name for resources stored within AFS.  UNC paths should be used instead of drive letter mappings whenever possible.   -This is especially true when specifying the location of roaming profiles and -redirected folders.  

+This is especially true when specifying the location of roaming profiles and redirected +folders.  

Power users that make extensive use of the command line -shell, cmd.exe, should consider using JP Software's 4NT or Take Command command -processors.  Unlike cmd.exe, the JPSoftware shells fully support UNC paths -as the current directory.  JPSoftware added special recognition for -OpenAFS to its command shells, 4NT 7.0 and Take Command 7.0.  AFS paths -can be entered in UNIX notation (e.g., /afs/openafs.org/software), space -utilization reports the output of the volume status for the specified path, and -many AFS specific functions and variables have been added to the command -language.

- -

JPSoftware's web site is http://www.jpsoft.com.

- -

command processors.  Unlike cmd.exe, the JPSoftware shells fully support UNC paths as the current +directory.  JPSoftware added special recognition +for OpenAFS to its command shells, 4NT 7.0 and Take Command 7.0.  AFS +paths can be entered in UNIX notation (e.g., /afs/openafs.org/software), +space utilization reports the output of the volume status for the specified +path, and many AFS specific functions and variables have been added to the +command language.

+ +

JPSoftware's web site is http://www.jpsoft.com.

+ +

3.9. aklog.exe

@@ -1319,13 +1353,14 @@ which should be used in preference to those obtained by other sources.  The OpenAFS aklog.exe supports Kerberos v5 as well as the ability to auto-generate AFS IDs within foreign PTS databases.

-

Usage: aklog [-d] [[-cell | -c] cell [-k krb_realm]]

+

Usage: aklog [-d] [[-cell | +-c] cell [-k krb_realm]]

             [[-p | -path] pathname]

             -[-noprdb] [-force]

+[-noprdb] [-force]

             [-5 [-m]| -4]

@@ -1337,13 +1372,14 @@ auto-generate AFS IDs within foreign PTS databases.

   cell = zero or more cells for which tokens will be obtained

-

   krb_realm = the kerberos realm of the -cell.

+

   krb_realm = +the kerberos realm of the cell.

   pathname = the directory for which authentication is required

-

   -noprdb = don't try to determine AFS ID.

+

   -noprdb = +don't try to determine AFS ID.

   -5 or -4 = use Kerberos V (default) or Kerberos IV tickets

@@ -1351,9 +1387,9 @@ Kerberos IV tickets

   -m = use krb524d to convert Kerberos V tickets to Kerberos IV

-

3.10. OpenAFS Servers on Windows are Unsupported

@@ -1362,25 +1398,27 @@ install package might work but should be considered highly experimental.  It has not been thoroughly tested.  Any data which would cause pain if lost should not be stored in an OpenAFS Server on Windows.

-

3.10.1. OpenAFS Server Installation

- -

When the OpenAFS Server is installed, the TransarcAFSServer -service (bosctlsvc.exe) will be installed and configured.  The TransarcAFSServer service will auto-start -the traditional AFS bos server.  The -former AFS Server Configuration wizard makes assumptions that no longer hold -true and it has therefore been disabled.  -However, following the instructions for installing the AFS Servers on -UNIX it is possible to properly configure the AFS Servers on Microsoft -Windows.  The AFS Server binaries, -configuration files, and log files are installed under %Program -Files%\OpenAFS\Server.   kaserver has been deprecated and its use is strongly -discouraged.  Instead, -Active Directory or some other Kerberos v5 KDC should be used in its place.

- -

3.10.2. Using the AFS Client Service when the +

3.10.1. OpenAFS Server Installation

+ +

When the OpenAFS Server is installed, the TransarcAFSServer service (bosctlsvc.exe) will be installed +and configured.  The TransarcAFSServer +service will auto-start the traditional AFS bos +server.  The former AFS Server +Configuration wizard makes assumptions that no longer hold true and it has +therefore been disabled.  However, +following the instructions for installing the AFS Servers on UNIX it is +possible to properly configure the AFS Servers on Microsoft Windows.  The AFS Server binaries, configuration files, +and log files are installed under %Program Files%\OpenAFS\Server.   kaserver has been deprecated and its use is strongly discouraged.  Instead, Active Directory or some other +Kerberos v5 KDC should be used in its place.

+ +

3.10.2. Using the AFS Client Service when the Server is installed

A few notes on the usage of the AFS Client Service if it is @@ -1391,29 +1429,31 @@ style='font-size:9.0pt;font-family:Symbol'> font-family:"Times New Roman"'>       Freelance mode should be disabled when the AFS Client Service is installed on the same machine as the AFS Server,.  Otherwise, you will be unable to manipulate -the contents of the root.afs volume for the hosted cell without constructing an -explicit mountpoint to the root.afs volume from another volume.

+the contents of the root.afs volume for the hosted +cell without constructing an explicit mountpoint to +the root.afs volume from another volume.

·       The -AFS Server and related tools only support the built in kaserver (Kerberos -IV).  If kaserver is being used, MIT -Kerberos for Windows should not be installed or must be disabled via the EnableKFW registry value.

+AFS Server and related tools only support the built in kaserver +(Kerberos IV).  If kaserver is being used, MIT Kerberos for Windows should not be +installed or must be disabled via the EnableKFW registry value.

·       The AFS -Servers are not aware of power management events nor are they aware of network -configuration changes.  It is strongly -advised that the AFS servers be installed only on systems that will not be -shutdown or suspended unexpectedly.   An inadvertent -shutdown will corrupt volume data.

- -

       The +AFS Servers are not aware of power management events nor are they aware of +network configuration changes.  It is +strongly advised that the AFS servers be installed only on systems that will +not be shutdown or suspended unexpectedly.   +An inadvertent shutdown will corrupt volume data.

+ +

3.11. OpenAFS Debugging Symbol files

@@ -1436,9 +1476,9 @@ or not the debug symbols are installed by default (release: no, debug: yes)

·       whether -or not fs trace logging is turned on -by default (release: no, debug: yes)

+or not fs trace logging is turned on by default +(release: no, debug: yes)

·       wheth or not additional debug statements were compiled into the binaries (release: no, debug: yes)

-

3.12. Large Files (64-bit) Supported

@@ -1457,22 +1497,22 @@ larger than 2GB.  The maximum file size is now 16777216 terabytes when the AFS File Server supports large files.   If the AFS File Server does not support large files, then the file size limit remains 2GB.

-

3.13. Encrypted AFS Network Communication

The OpenAFS for Windows installer by default activates a weak form of encrypted data transfer between the AFS client and the AFS -servers.  This is often referred to as "fcrypt" mode.  -Encrypted data transfer can be turned on or off with the “fs crypt” -command.  Transitions between “crypt” and “non-crypt” modes are logged to -the Windows Application Event Log.

+servers.  This is often referred to as "fcrypt" +mode.  Encrypted data transfer can be turned on or off with the “fs crypt” command.  Transitions between “crypt” and +“non-crypt” modes are logged to the Windows Application Event Log.

-

3.14. Authenticated Access to the OpenAFS Client Service

@@ -1483,19 +1523,19 @@ used to obtain access to another user's tokens on shared machines.   

When GSS SPNEGO attempts a Kerberos v5 authentication, the -Windows SMB client will attempt to retrieve service tickets for -"cifs/afs@REALM" (if the loopback adapter is in use) or -"cifs/machine-afs@REALM" (if the loopback adapter is not being -used).  It is extremely important that this service principal not exist in -the KDC database as the Kerberos authentication must fail allowing automatic -fallback to NTLM.  When NTLM is used a special local authentication mode -will be used that does not require access to the user's password.  -Instead, Windows will internally recognize the request as coming from a local -logon session.

- -

cifs/afs@REALM" (if the loopback adapter is in use) or +"cifs/machine-afs@REALM" (if the loopback +adapter is not being used).  It is extremely important that this service +principal not exist in the KDC database as the Kerberos authentication must fail +allowing automatic fallback to NTLM.  When NTLM is used a special local +authentication mode will be used that does not require access to the user's +password.  Instead, Windows will internally recognize the request as +coming from a local logon session.

+ +

3.15. No More INI Files

@@ -1503,32 +1543,33 @@ No More INI Files

in Windows .INI files.   The OpenAFS client does not use Windows .INI files for the storage of configuration data.   All settings are stored in the registry (see Appendix A).  -The CellServDB file is now stored in the %PROGRAMFILES%\OpenAFS\Client -directory.   The CellServDBDir +The CellServDB file is now stored in the +%PROGRAMFILES%\OpenAFS\Client directory.   The CellServDBDir registry value can be used to specify an alternative location.

OpenAFS will relocate the contents of the “afsdcell.ini” -file to the new CellServDB file.  OpenAFS will also import the contents of -the “afs_freelance.ini” file to the Windows registry.   OpenAFS will -not process the contents of the “afsddbmt.ini”.

+file to the new CellServDB file.  OpenAFS will +also import the contents of the “afs_freelance.ini” file to the Windows +registry.   OpenAFS will not process the contents of the +“afsddbmt.ini”.

-

3.16. Microsoft Windows Internet Connection Firewall

The OpenAFS Client is compatible with the Internet Connection Firewall that debuted with Windows XP SP2 and Windows 2003 -SP1.  The Internet Connection Firewall will be automatically adjusted to -allow the receipt of incoming callback messages from the AFS file server.  -In addition, the appropriate Back Connection registry entries are added -to allow SMB authentication to be performed across the Microsoft Loopback -Adapter.

+SP1.  The Internet Connection Firewall will be automatically adjusted to allow +the receipt of incoming callback messages from the AFS file server.  In +addition, the appropriate Back Connection registry entries are added to +allow SMB authentication to be performed across the Microsoft Loopback Adapter.

-

3.17. Browsing AFS from the Explorer Shell and Office

@@ -1537,19 +1578,19 @@ Protocol which allows Explorer to browse server and share information. This significantly enhances the interoperability of AFS volumes within the Explorer Shell and Microsoft Office applications.

-

3.18. Byte Range Locking

Many applications on Windows (e.g. Microsoft Office) require the use of byte range locks applied to a file either to protect against -simultaneous file access or as a signaling mechanism.   OpenAFS for Windows -release 1.5 (or greater) implements byte range locking within the CIFS-AFS -gateway server.   This support for byte range locking obtains AFS’ -advisory file server locks to simulate Microsoft Windows mandatory +simultaneous file access or as a signaling mechanism.   OpenAFS for +Windows release 1.5 (or greater) implements byte range locking within the +CIFS-AFS gateway server.   This support for byte range locking +obtains AFS’ advisory file server locks to simulate Microsoft Windows mandatory locks.   When an application opens a file, a lock will be obtained from AFS indicating that the file is in use.  If the lock is a write lock, access to the file will be restricted to other applications running on the same @@ -1587,19 +1628,19 @@ CIFS-AFS gateway implements the following semantics in order to reduce the inconvenience on end users. 

    -
  • If +
  • If the file is located on a read-only volume and the application requests a shared lock, the CIFS-AFS server will grant the lock request without asking the AFS file server.
  • -
  • If +
  • If the file is located on a read-only volume and the application opens the file with write access and requests an exclusive lock, the CIFS-AFS server will refuse the lock request and return a read only error.
  • -
  • If +
  • If the file is located on a read-only volume and the application opens the file with only read access and requests an exclusive lock, the CIFS-AFS server will fulfill the lock request with a read lock.
  • -
  • If +
  • If the file is located on a read-write volume and the application requests an exclusive lock, the CIFS-AFS server will request a write lock from the AFS file server.  If granted by the file server, then the CIFS-AFS server @@ -1612,7 +1653,7 @@ inconvenience on end users. 

    the request even though the AFS file server said ‘no’.  If the user does not have at least those permissions, the CIFS-AFS server will deny the request.
  • -
  • If +
  • If the file is located on a read-write volume and the application requests a shared lock, the CIFS-AFS server will request a read lock from the AFS file server.  If granted by the file server, then the CIFS-AFS server @@ -1621,11 +1662,11 @@ inconvenience on end users. 

    lock privilege, then the CIFS-AFS server will grant the request even though the AFS file server said ‘no’.  If the user does not have at least those permissions, the CIFS-AFS server will deny the request.
  • -
  • If +
  • If multiple processes on the same machine attempt to access the same file simultaneously, the CIFS-AFS server will locally manage the granted locks and all processes will share a single lock on the AFS file server.
  • -
  • If +
  • If the CIFS-AFS server is unable to renew the AFS file server locks, then it will invalidate the associated file handles.  This is the same behavior that an application will experience if it was using a Windows @@ -1635,29 +1676,31 @@ inconvenience on end users. 

    If you wish to disable the acquisition of locks from the file server, this can be performed using the EnableServerLocks registry value.

    +href="#_Value:_EnableServerLocks">EnableServerLocks +registry value.

    -

    3.19. Automatic Discarding of AFS Tokens at Logoff

    The OpenAFS Client will automatically forget a user's tokens upon Logoff unless the user's profile was loaded from an AFS volume.  In this situation there is no mechanism to determine when the profile has been -successfully written back to the network.  It is therefore unsafe to release -the user's tokens.  Whether or not the profile has been loaded from the -registry can be determined for Local Accounts, Active Directory accounts and -NT4 accounts.

    +successfully written back to the network.  It is therefore unsafe to +release the user's tokens.  Whether or not the profile has been loaded +from the registry can be determined for Local Accounts, Active Directory +accounts and NT4 accounts.

    If there is a need to disable this functionality, the LogoffPreserveTokens registry value -can be used. (see Appendix A.)

    +href="#_Value_:_LogoffPreserveTokens">LogoffPreserveTokens +registry value can be used. (see Appendix A.)

    -

    3.20. Windows Terminal Server installations

    @@ -1667,9 +1710,9 @@ Panel.  Failure to do so will result in AFS not running properly.  The AFS Server should not be installed on a machine with Terminal Server installed.

    -

    3.21. Hidden Dot Files

    @@ -1678,11 +1721,12 @@ attempts to treat the files stored in AFS as they would be on UNIX.  File and directory names beginning with a "." are automatically given the Hidden attribute so they will not normally be displayed.  This behavior can be altered via the HideDotFiles registry value.

    +href="#_Value:_HideDotFiles">HideDotFiles +registry value.

    -

    3.22. Status Cache Limits

    @@ -1702,27 +1746,28 @@ maximum number of Status Cache entries.  Each entry requires approximately style='mso-spacerun:yes'>  This can be adjusted using the Stats registry value.

    -

    3.23. NETBIOS over TCP/IP must be enabled

    -

    "Netbios over TCP/IP" must be active on the -machine in order for communication with the AFS Client Service to -succeed.  If "Netbios over TCP/IP" is disabled on the machine, -then communication with the AFS Client Service will be impossible.  If you are using the Microsoft Loopback -Adapter, configure the “Netbios over TCP/IP” setting for the adapter.

    +

    "Netbios over TCP/IP" +must be active on the machine in order for communication with the AFS Client +Service to succeed.  If "Netbios over +TCP/IP" is disabled on the machine, then communication with the AFS Client +Service will be impossible.  If you are +using the Microsoft Loopback Adapter, configure the “Netbios +over TCP/IP” setting for the adapter.

    -

    3.24. OpenAFS binaries are digitally signed

    -

    The OpenAFS Client Service and related binaries distributed -by OpenAFS.org are digitally signed by "Secure Endpoints Inc.".  +

    The OpenAFS Client Service and related binaries distributed by +OpenAFS.org are digitally signed by "Secure Endpoints Inc.".  The OpenAFS Client Service will perform a run-time verification check to ensure that all OpenAFS related DLLs loaded by the service match the same file version number and were signed by the same entity.  This check has been added to @@ -1732,15 +1777,16 @@ wasted tracking down problems caused by the mixture of files from different releases. 

    Appendix A -documents the "VerifyServiceSignature" -registry value which can be used to disable the signature check.  The file -version check cannot be disabled.

    +documents the "VerifyServiceSignature" registry value which can +be used to disable the signature check.  The file version check cannot be +disabled.

    -

    3.25. -Maximum Size of the AFSCache File

    +Maximum Size of the AFSCache File

    The maximum cache size on 32-bit Windows is approximately 1.3GB.  This is the largest contiguous block of memory in the 2GB process @@ -1751,21 +1797,21 @@ cache size greater then 700MB will result in the automatic disabling of the signature check.  Significantly larger cache sizes can be used on 64-bit Windows.

    -

    3.26. Filename Character Sets

    OpenAFS for Windows implements an SMB server which is used -as a gateway to the AFS filesystem.  Because of limitations of the SMB -implementation, Windows stores all files into AFS using OEM code pages such as -CP437 (United States) or CP850 (Western Europe).  These code pages are -incompatible with the ISO Latin-1 character set typically used as the default -on UNIX systems in both the United States -and Western Europe.  Filenames stored by -OpenAFS for Windows are therefore unreadable on UNIX systems if they include -any of the following characters:

    +as a gateway to the AFS filesystem.  Because of +limitations of the SMB implementation, Windows stores all files into AFS using +OEM code pages such as CP437 (United States) or CP850 (Western Europe).  +These code pages are incompatible with the ISO Latin-1 character set typically +used as the default on UNIX systems in both the United + States and Western Europe.  +Filenames stored by OpenAFS for Windows are therefore unreadable on UNIX +systems if they include any of the following characters:

    @@ -1824,7 +1870,7 @@ any of the following characters:

    [ù]  151  09/07  227  97  u grave

         - [ÿ]  152  09/08  230  98  y diaeresis

    + [ÿ]  152  09/08  230  98  y diaeresis

         [Ö]  153  09/09  231  99  O diaeresis

    @@ -1849,16 +1895,17 @@ any of the following characters:

     

    The OpenAFS Client provides an optional registry value, StoreAnsiFilenames, that can be -set to instruct OpenAFS to store filenames using the ANSI Code Page instead of -the OEM Code Page.  The ANSI Code Page is a compatible superset of -Latin-1.  This setting is not the default setting because making this -change would prevent OpenAFS for Windows from being able to access filenames -containing the above characters which were created without this setting.

    - -

    StoreAnsiFilenames, that can be set to instruct OpenAFS to store filenames +using the ANSI Code Page instead of the OEM Code Page.  The ANSI Code Page +is a compatible superset of Latin-1.  This setting is not the default +setting because making this change would prevent OpenAFS for Windows from being +able to access filenames containing the above characters which were created +without this setting.

    + +

    3.27. Known Character Set Issues with Roaming Profiles

    @@ -1871,45 +1918,47 @@ UNICODE.  To avoid this problem some sites run custom logoff scripts (assigned by group policy) which rename all files to use only the supported characters for the locale.

    -

    3.28. -The AFSCache File

    +The AFSCache File -

    The AFS Cache file is stored by default at %TEMP%\AFSCache -in a persistent file marked with the Hidden and System attributes.  The -persistent nature of the data stored in the cache file improves the performance -of OpenAFS by reducing the number of times data must be read from the AFS file -servers. 

    +

    The AFS Cache file is stored by default at %TEMP%\AFSCache in a persistent file marked with the Hidden and +System attributes.  The persistent nature of the data stored in the cache file +improves the performance of OpenAFS by reducing the number of times data must +be read from the AFS file servers. 

    The performance of the AFS Client Service is significantly -affected by the access times associated with the AFSCache paging -file.   When given the choice, the AFSCache file should be placed on a -fast disk, preferably NTFS, the file should not be compressed and should -consist of as few fragments as possible.   Significant performance -gains can be achieved by defragmenting the AFSCache file with Sysinternal's -Contig utility while the AFS Client Service is stopped.

    - -

    AFSCache +paging file.   When given the choice, the AFSCache +file should be placed on a fast disk, preferably NTFS, the file should not be +compressed and should consist of as few fragments as possible.   +Significant performance gains can be achieved by defragmenting +the AFSCache file with Sysinternal's +Contig utility while the AFS Client Service is +stopped.

    + +

    3.29. Restricting OpenAFS Client Service Start and Stop

    A new command line tool, afsdacl.exe, can be used to restrict the ability to start and stop the OpenAFS Client Service.

    -

        afsdacl : Set or reset the DACL to -allow starting or stopping

    +

        afsdacl +: Set or reset the DACL to allow starting or stopping

    -

             the -afsd service by any ordinary user.

    +

             the afsd service by any ordinary user.

     

    -

        Usage : afsdacl [-set | -reset] -[-show]

    +

        Usage : afsdacl +[-set | -reset] [-show]

              -set   : Sets the DACL

    @@ -1920,52 +1969,54 @@ afsd service by any ordinary user.

              -show  : Show current DACL (SDSF)

    -

    3.30. The @sys Name List

    The default @sys name list in the OpenAFS Client is set to "x86_win32 i386_w2k i386_nt40" for 32-bit x86 systems.  The -default is "amd64_win64" for amd 64-bit versions of Windows.

    +default is "amd64_win64" for amd 64-bit +versions of Windows.

    -

    3.31. Symlinks to AFS UNC paths

    In OpenAFS, symlinks to AFS UNC paths, \\AFS[\all]\..., are -treated the same as symlinks to /afs/...  However, please use /afs/... as -the Windows UNC form will not work on UNIX client.

    +treated the same as symlinks to /afs/...  +However, please use /afs/... as the Windows UNC form +will not work on UNIX client.

    -

    3.32. Cache Manager Debugging Now Supported

    The OpenAFS Client implements the Cache Manager Debugging RPC Interface.  The CM debugger can be queried with cmdebug.exe.

    -

    Usage: cmdebug -servers <server machine> [-port -<IP port>] [-long]

    +

    Usage: cmdebug -servers +<server machine> [-port <IP port>] [-long]

                   -[-addrs] [-cache] [-help]

    +[-addrs] [-cache] [-help]

    Where: -long   print all info

    -

           -addrs  -print only host interfaces

    +

           -addrs  print only host interfaces

           -cache  print only cache configuration

    -

    3.33. Windows Logon Caching vs. Kerberos Logons

    @@ -1974,22 +2025,21 @@ principals to logon to Windows via a cross-realm relationship with a multi-domain Windows forest, you must enable Windows logon caching unless the workstation is Windows Vista.

    -

    3.34. Initial Server Preferences

    VLDB and File Server Preferences can now be provided initial -values using registry keys.  This is useful for managed machines in a -Windows domain which are centrally located (e.g., in a computing lab.)  -See Appendix A for details on the -"Server Preferences" -keys.

    +values using registry keys.  This is useful for managed machines in a Windows +domain which are centrally located (e.g., in a computing lab.)  See Appendix A for details on the "Server Preferences" keys.

    -

    3.35. File Timestamps

    @@ -2011,57 +2061,60 @@ are used to being able to compare the timestamp in an UNIX shell with the timestamp from the Windows explorer.  During DST, these two times will no longer agree even though they are in fact representing the same moment in time.

    -

    3.36. Windows RPC client support must be installed

    If the installer refuses to install and complains about an RPC configuration error, check to ensure that the following registry entries -are present and that they refer to the dll "rpcrt4.dll":

    +are present and that they refer to the dll +"rpcrt4.dll":

    -

       HKLM -"SOFTWARE\Microsoft\RPC\ClientProtocols" "ncacn_np"

    +

       HKLM "SOFTWARE\Microsoft\RPC\ClientProtocols" "ncacn_np"

    -

       HKLM -"SOFTWARE\Microsoft\RPC\ClientProtocols" "ncacn_ip_tcp"

    +

       HKLM "SOFTWARE\Microsoft\RPC\ClientProtocols" "ncacn_ip_tcp"

    -

       HKLM -"SOFTWARE\Microsoft\RPC\ClientProtocols" "ncadg_ip_udp"

    +

       HKLM "SOFTWARE\Microsoft\RPC\ClientProtocols" "ncadg_ip_udp"

    -

       HKLM -"SOFTWARE\Microsoft\RPC\ClientProtocols" "ncacn_http"

    +

       HKLM "SOFTWARE\Microsoft\RPC\ClientProtocols" "ncacn_http"

    -

    3.37. -Generating Minidumps of the OpenAFS Client Service

    +Generating Minidumps of the OpenAFS Client Service -

    OpenAFS 1.4 added a new command, "fs -minidump".  This command can be used at any time to generate a mini -dump file containing the current stack of the afsd_service.exe -process.   This output can be very helpful when debugging the AFS -Client Service when it is unresponsive to SMB/CIFS requests.

    +

    OpenAFS 1.4 added a new command, "fs +minidump".  This command can be used at any +time to generate a mini dump file containing the current stack of the +afsd_service.exe process.   This output can be very helpful when +debugging the AFS Client Service when it is unresponsive to SMB/CIFS requests.

    -

    3.38. AFS Client Universally Unique Identifiers

    The OpenAFS Client implements Universally Unique Identifiers -(UUIDs).  They are used to provide the server with a method of identifying -the client that is independent of IP address.  The UUID is generated when -the AFSCache file is created and is maintained as long as the contents of the -AFSCache file are kept intact.  The UUID is stored in the AFSCache -file.   When cloning machines that have Windows AFS client installed, -the AFSCache files should be deleted as part of the cloning process.

    - -

    3.39. Delayed Write Errors with Microsoft +(UUIDs).  They are used to provide the server +with a method of identifying the client that is independent of IP +address.  The UUID is generated when the AFSCache +file is created and is maintained as long as the contents of the AFSCache file are kept intact.  The UUID is stored in +the AFSCache file.   When cloning machines +that have Windows AFS client installed, the AFSCache +files should be deleted as part of the cloning process.

    + +

    3.39. Delayed Write Errors with Microsoft Office Applications

    Microsoft Office makes heavy use of asynchronous @@ -2081,16 +2134,16 @@ with the explorer shell does not use asynchronous i/o.

    The CIFS session timeout defaults to 45 seconds and can be increased by modifying the registry.

    -

    3.40. Global Drives (aka 3.40. Global Drives (aka Service Drive +style='mso-bookmark:_Toc170268864'> Letters) are no longer supported by Microsoft

    -

    The Global DriveAuto-mount feature has been deprecated due -to the following Microsoft KB article.

    +

    The Global DriveAuto-mount +feature has been deprecated due to the following Microsoft KB article.

    http://msdn.microsoft.com/library/en-us/dllproc/base/services_and_redirected_drives.asp

    @@ -2105,9 +2158,9 @@ re-established until the machine is rebooted.

    applications should be modified to use of \\AFS\<cellname>\<path> instead of drive letters.

    -

    3.41. 64-bit Microsoft Windows Installations

    +

    3.41. 64-bit Microsoft Windows Installations

    Although 64-bit Windows platforms support both 64-bit and 32-bit applications, the OpenAFS Service installed on the machine must be @@ -2122,10 +2175,10 @@ for Windows can be used with the 32-bit OpenAFS Tools to manage AFS tokens.

    Without this restriction the AFS Cache File can become arbitrarily large limited only by available disk space.

    -

    3.42. Known Issues with Microsoft Windows 3.42. Known Issues with Microsoft Windows Vista

    OpenAFS for Windows works with Microsoft Windows Vista @@ -2133,8 +2186,7 @@ w:st="on">  When performing an upgrade from earlier versions of Microsoft Windows the Microsoft Loopback Adapter (MSLA) may be uninstalled.   OpenAFS should be -re-installed after the Microsoft Vista installation to restore the MSLA -configuration.

    +re-installed after the Microsoft Vista installation to restore the MSLA configuration.

    Due to a feature change in Windows Vista’s Plug-n-Play network stack, during a standby/hibernate operation the MSLA is disabled just @@ -2153,9 +2205,9 @@ privilege. run with the minimum required privileges.  Even Administrator accounts run applications without the “Administrator” access control credentials.  One side -effect of this is that existing applications that mix user and system -configuration capabilities must be re-written to separate those functions that -require “Administrator” privileges into a separate process space.  Future updates to OpenAFS will incorporate the necessary privilege separation, until that time some functions such as the Start and Stop Service features of the AFS System Tray tool and the AFS Control @@ -2163,353 +2215,457 @@ Panel will not work unless they are

    The help files provided with OpenAFS are in .HLP format. Windows Vista does not include a -help engine for this format. openafs-bugs@openafs.org.  -Please include as much information as possible about the issue.  If you -are reporting a crash, please install the debugging symbols by re-running the -installer.  If a dump file is available for the problem, -%WINDIR%\TEMP\afsd.dmp, include it along with the AFS Client Trace file  -%WINDIR%\TEMP\afsd.log.  The AFS Client startup log is %WINDIR%\TEMP\afsd_init.log.  -Send the last continuous block of  log information from this file.

    - -

    4. How to Debug Problems with OpenAFS for Windows:

    +help engine for this format.

    + +

    3.43. +New AFS Share Name Syntax Provides Direct Access to Volumes

    + +

    Starting with the +1.5.21 release of OpenAFS for Windows, the following syntax can be used to +access any volume in any cell without requiring the creation of a mount point.

    + +

    \\AFS\<cell><mount +point type><volume>\

    + +

    Where <cell> +can be either a full cell name or an unambiguous prefix, the <mount point +type> is ‘#’ for a normal mount point or ‘%’ to force the use of a +read-write volume, and <volume> is either a volume name or its ID number.

    + +

    Examples include:

    + +

                \\AFS\athena.mit.edu#user.jaltman\

    + +

                \\AFS\athena%user.jaltman\

    + +

                \\AFS\athena.mit.edu# 537235559\

    + +

    3.44. +Differences between Windows and UNIX “fs examine”

    + +

    The OpenAFS for +Windows version of “fs examine” provide two +additional lines of output when compared to the UNIX implementation.  These lines include the owner and group +information for the file as well as the volume status.

    + +
    [C:\]fs examine \\afs\athena#user.jaltman
    File \\afs\athena#user.jaltman (537235559.1.1) contained in cell athena.mit.edu
    Owner jaltman (28180) Group 0
    Volume status for vid = 537235559 named user.jaltman is
    Current disk quota is 1500000
    Current blocks used are 1244184
    The partition has 151945877 blocks available out of 511163724
    Volume is online 
    + +

    4. How to +Debug Problems with OpenAFS for Windows:

    OpenAFS for Windows provides a wide range of tools to assist -you in debugging problems.  The techniques available to you are varied because -of the wide range of issues that have been discovered over the years.

    +you in debugging problems.  The techniques available to you are varied +because of the wide range of issues that have been discovered over the years.

    -

    4.1. -pioctl debugging (IoctlDebug -registry key)

    +

    4.1. pioctl +debugging (IoctlDebug registry key)

    -

    pioctl (path-based ioctl) calls are used by various tools to -communicate with the AFS Client Service.  Some of the operations performed -include:

    +

    pioctl (path-based ioctl) calls are used by various tools to communicate with +the AFS Client Service.  Some of the operations performed include:

    ·       -setting/querying tokens  (tokens.exe, aklog.exe, afscreds.exe)

    +style='font-size:9.0pt;font-family:Symbol'>·       setting/querying +tokens  (tokens.exe, aklog.exe, afscreds.exe)

    ·       -setting/querying ACLs

    +style='font-size:9.0pt;font-family:Symbol'>·       setting/querying +ACLs

    ·       -setting/querying cache parameters

    +style='font-size:9.0pt;font-family:Symbol'>·       setting/querying +cache parameters

    ·       -flushing files or volumes

    +style='font-size:9.0pt;font-family:Symbol'>·       flushing +files or volumes

    ·       -setting/querying server preferences

    +style='font-size:9.0pt;font-family:Symbol'>·       setting/querying +server preferences

    ·       -querying path location

    +style='font-size:9.0pt;font-family:Symbol'>·       querying +path location

    ·       -checking the status of servers and volumes

    +style='font-size:9.0pt;font-family:Symbol'>·       checking +the status of servers and volumes

    ·       -setting/querying the sysname list

    +style='font-size:9.0pt;font-family:Symbol'>·       setting/querying +the sysname list

    -

    pioctl calls are implemented by writing to a special UNC -path that is processed by the AFS Client Service.   If there is a failure to -communicate with the AFS Client Service via SMB/CIFS, it will be impossible to -perform any of the above operations.  

    +

    pioctl calls are implemented by +writing to a special UNC path that is processed by the AFS Client +Service.   If there is a failure to communicate with the AFS Client Service +via SMB/CIFS, it will be impossible to perform any of the above +operations.  

    To assist in debugging these problems, the registry value:

    -

      [HKLM\SOFTWARE\OpenAFS\Client]

    +

      [HKLM\SOFTWARE\OpenAFS\Client]

    -

      REG_DWORD:  IoctlDebug   = 0x01

    +

      REG_DWORD:  IoctlDebug   += 0x01

    -

    should be set.  Then any of the commands that perform pioctl -calls should be executed from the command prompt.  With this key set the pioctl -library will generate debugging output to stderr.  The output will contain the -Win32 API calls executed along with their most important parameters and their -return code.   The MSDN Library and the Microsoft KnowledgeBase can be used as -a reference to help you determine the configuration probem with your system.

    +

    should be set.  Then any of the commands that perform pioctl calls should be executed from the command +prompt.  With this key set the pioctl library +will generate debugging output to stderr.  The +output will contain the Win32 API calls executed along with their most +important parameters and their return code.   The MSDN Library and +the Microsoft KnowledgeBase can be used as a +reference to help you determine the configuration probem +with your system.

    -

    4.2. -afsd_service initialization log (%WinDir%\TEMP\afsd_init.log)

    +

    4.2. afsd_service initialization log +(%WinDir%\TEMP\afsd_init.log)

    Every time the AFS Client Service starts it appends data -about its progress and configuration to a file.  This file provides information -crucial to determining why the service cannot start when there are problems.  -When the process terminates due to a panic condition it will write to this file -the source code file and line number of the error.  In many cases the panic -condition is due to a misconfiguration of the machine.  In other cases it might -be due to a programming error in the software.  A quick review of the location -in the source code will quickly reveal the reason for the termination.

    - -

    The MaxLogSize -registry value determines the maximum size of the %WINDIR%\TEMP\afsd_init.log -file.  If the file is larger than this value when OpenAFS Client Service -starts, the file will be reset to 0 bytes.  If value is set to 0, the file will -be allowed to grow indefinitely.

    - -

    4.3. -afsd_service debug logs (fs trace {-on, -off, -dump} -->%WinDir%\TEMP\afsd.log)

    +about its progress and configuration to a file.  This file provides +information crucial to determining why the service cannot start when there are +problems.  When the process terminates due to a panic condition it will write +to this file the source code file and line number of the error.  In many +cases the panic condition is due to a misconfiguration +of the machine.  In other cases it might be due to a programming error in +the software.  A quick review of the location in the source code will +quickly reveal the reason for the termination.

    + +

    The MaxLogSize +registry value determines the maximum size of the %WINDIR%\TEMP\afsd_init.log file.  If the file is larger than this +value when OpenAFS Client Service starts, the file will be reset to 0 +bytes.  If value is set to 0, the file will be allowed to grow +indefinitely.

    + +

    4.3. afsd_service debug logs (fs trace {-on, -off, -dump} ->%WinDir%\TEMP\afsd.log)

    When attempting to debug the behavior of the SMB/CIFS Server and the Cache Manager it is often useful to examine a log of the operations -being performed.  While running the AFS Client Service keeps an in memory log -of many of its actions.   The default number of actions preserved at any one -time is 5000.  This can be adjusted with the registry value:

    -

      +

      [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters]

    -

      REG_DWORD  TraceBufferSize

    - -

    A restart of the service is necessary when adjusting this -value.   Execute "fs trace -on" to clear to the log and "fs -trace -dump" to output the contents of the log to the file.

    - -

    4.4. -Using SysInternal’s DbgView and ProcMon or FileMon Tools

    - -

    An alternatve option to the use of "fs trace -dump" -to capture internal OpenAFS Client Service events is to use a tool such as -Sysinternal's DbgView to capture real-time debugging output.  When the OpenAFS -Client Service starts and Bit 2 of the TraceOption -value in the registry is set, all trace log events are output using the Windows -Debug Monitor interface (OutputDebugString). 

    +

      REG_DWORD  TraceBufferSize +

    -

      +

    A restart of the service is necessary when adjusting this value.   +Execute "fs trace -on" to clear to the log +and "fs trace -dump" to output the contents +of the log to the file.

    + +

    4.4. Using SysInternal’s DbgView and ProcMon or FileMon Tools

    + +

    An alternatve option to the use of +"fs trace -dump" to capture internal +OpenAFS Client Service events is to use a tool such as Sysinternal's +DbgView to capture real-time debugging output.  +When the OpenAFS Client Service starts and Bit 2 of the TraceOption value in +the registry is set, all trace log events are output using the Windows Debug +Monitor interface (OutputDebugString). 

    + +

      [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters]

    -

    REG_DWORD   TraceOption = -0x04

    +

    REG_DWORD   TraceOption = 0x04

    -

    Use “fs trace –on” and “fs trace –off” to toggle the -generation of log messages.

    +

    Use “fs trace –on” and “fs trace –off” to toggle the generation of log messages.

    -

    Sysinternal’s ProcMon or FileMon utilities can be use to monitor the -file operations requested by applications and their success or failure.   -

    +

    Sysinternal’s ProcMon or FileMon utilities can be use to monitor the file operations +requested by applications and their success or failure.  

    -

    -In FileMon, use the Volumes menu to restrict monitoring to Network volumes only in -order to reduce the output to just the CIFS requests.  Turn on the Advanced -Output option in order to log with finer granularity.

    +

    In FileMon, use the Volumes menu to restrict monitoring to Network +volumes only in order to reduce the output to just the CIFS requests.  +Turn on the Advanced Output option in order to log with finer +granularity.

    -

    -In ProcMon, set a filter to include only events on file paths that refer to the AFS name -space. Be sure to include both the UNC path as well as any drive letters mapped to AFS. -

    +

    In ProcMon, set a filter to +include only events on file paths that refer to the AFS name space. Be sure to +include both the UNC path as well as any drive letters mapped to AFS.

    Turn on the Clock Time and Show Milliseconds options in both tools to make it easier to synchronize the application requests -and the resulting OpenAFS Client Service operations.   The captured data can be -stored to files for inclusion in bug -reports.

    +and the resulting OpenAFS Client Service operations.   The captured +data can be stored to files for inclusion in bug reports.

    -

    4.5. Microsoft -MiniDumps
    -(fs minidump -> %WinDir%\TEMP\afsd.dmp)

    +

    4.5. Microsoft MiniDumps
    +(fs minidump -> %WinDir%\TEMP\afsd.dmp)

    If the AFS Client Service become unresponsive to any form of communication there may be a serious error that can only be debugged by someone -with access to the source code and a debugger.   The "fs minidump" -command can be used to force the generation of a MiniDump file containing the -state of all of the threads in the AFS Client Service process.

    +with access to the source code and a debugger.   The "fsminidump" command can be +used to force the generation of a MiniDump file +containing the state of all of the threads in the AFS Client Service process.

    -

    4.6. -Single Sign-on (Integrated Logon) debugging

    +

    4.6. Single Sign-on (Integrated Logon) debugging

    If you are having trouble with the Integrated Logon operations it is often useful to be able to obtain a log of what it is -attempting to do.   Setting Bit 0 of the TraceOption registry -value:

    +attempting to do.   Setting Bit 0 of the TraceOption +registry value:

    -

      +

      [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters]

    -

      REG_DWORD   TraceOption = 0x01

    +

      REG_DWORD   TraceOption += 0x01

    will instruct the Integrated Logon Network Provider and Event Handlers to log information to the Windows Event Log: Application under the name “AFS Logon".

    -

    4.7. -RX (AFS RPC) debugging (rxdebug)

    +

    4.7. RX (AFS RPC) debugging (rxdebug)

    The rxdebug.exe tool can be used to query a variety of -information about the AFS services installed on a given machine.  The port for -the AFS Cache Manager is 7001. 

    +information about the AFS services installed on a given machine.  The port +for the AFS Cache Manager is 7001. 

    -

    Usage: rxdebug -servers <server machine> [-port -<IP port>] [-nodally]

    +

    Usage: rxdebug -servers +<server machine> [-port <IP port>] [-nodally] +

    -

       -[-allconnections] [-rxstats] [-onlyserver] [-onlyclient]

    +

       +[-allconnections] [-rxstats] +[-onlyserver] [-onlyclient] +

    -

       [-onlyport <show -only <port>>]

    +

       [-onlyport <show only <port>>]

    -

       [-onlyhost <show -only <host>>]

    +

       [-onlyhost <show only <host>>]

    -

       [-onlyauth <show -only <auth level>>] [-version]

    +

       [-onlyauth <show only <auth level>>] [-version]

    -

       [-noconns] [-peers] -[-help]

    +

       [-noconns] [-peers] [-help]

    -

    Where: -nodally         don't show dallying conns

    +

    Where: -nodally         +don't show dallying conns

    -

           -allconnections  don't filter out -uninteresting connections

    +

           -allconnections  don't filter out uninteresting +connections

    -

           -rxstats         show Rx statistics

    +

           -rxstats         +show Rx statistics

    -

           -onlyserver      only show server conns

    +

           -onlyserver      only show server conns

    -

           -onlyclient      only show client conns

    +

           -onlyclient      only show client conns

    -

           -version         show AFS version id

    +

           +-version         show AFS version id

    -

           -noconns         show no connections

    +

           -noconns         +show no connections

    -

           -peers           show peers

    +

           +-peers           show peers

    -

    4.8. -Cache Manager debugging (cmdebug)

    +

    4.8. Cache Manager debugging (cmdebug)

    The cmdebug.exe tool can be used to query the state of the AFS Cache Manager on a given machine.

    -

    Usage: cmdebug -servers <server machine> [-port -<IP port>] [-long]

    +

    Usage: cmdebug -servers <server machine> [-port <IP +port>] [-long]

    -

       [-refcounts] -[-callbacks] [-addrs] [-cache] [-help]

    +

       [-refcounts] +[-callbacks] [-addrs] [-cache] [-help]

    -

    Where: -long       print all info

    +

    Where: -long       +print all info

    -

           -refcounts  print only cache entries with -positive reference counts

    +

           -refcounts  print only cache entries with positive +reference counts

    -

           -callbacks  print only cache entries with -callbacks

    +

           -callbacks  +print only cache entries with callbacks

    -

           -addrs      print only host interfaces

    +

           -addrs      print only host +interfaces

    -

           -cache      print only cache configuration

    +

           +-cache      print only cache configuration

    -

    4.9. -Persistent Cache consistency check

    +

    4.9. Persistent Cache consistency check

    -

    The persistent cache is stored in a Hidden System file at -%WinDir%\TEMP\AFSCache.  If there is a problem with the persistent cache that -prevent the AFS Client Service from being able to start a validation check on -the file can be performed.

    +

    The persistent cache is stored in a Hidden System file at %WinDir%\TEMP\AFSCache.  If there is a problem with the +persistent cache that prevent the AFS Client Service from being able to start a +validation check on the file can be performed.

    -

      afsd_service.exe --validate-cache +

      afsd_service.exe --validate-cache <cache-path>

    -

    5. Reporting Bugs:

    +name="_5._Reporting_Bugs:">5. +Reporting Bugs:

    Bug reports should be sent to openafs-bugs@openafs.org.  -Please include as much information as possible about the issue.  If you are -reporting a crash, please install the debugging symbols by re-running the -installer.  If a dump file is available for the problem, -%WINDIR%\TEMP\afsd.dmp, include it along with the AFS Client Trace file  -%WINDIR%\TEMP\afsd.log.  The AFS Client startup log is -%WINDIR%\TEMP\afsd_init.log.  Send the last continuous block of  log information -from this file.

    +href="mailto:openafs-bugs@openafs.org?subject=Bug%20Report">openafs-bugs@openafs.org.  +Please include as much information as possible about the issue.  If you +are reporting a crash, please install the debugging symbols by re-running the +installer.  If a dump file is available for the problem, %WINDIR%\TEMP\afsd.dmp, include it along with the AFS Client Trace +file  %WINDIR%\TEMP\afsd.log.  The AFS +Client startup log is %WINDIR%\TEMP\afsd_init.log.  +Send the last continuous block of  log information from this file.

    -

    Configuring DrWatson to generate dump files for crashes:

    +

    Configuring DrWatson to generate +dump files for crashes:

    ·       -Run drwtsn32.exe to configure or to identify where the log and -the crash dump files are created:

    +style='font-size:9.0pt;font-family:Symbol'>·       Run +drwtsn32.exe to configure or to identify where the log and the crash dump files +are created:

    ·       -click Start > Run... 

    +style='font-size:9.0pt;font-family:Symbol'>·       click +Start > Run... 

    ·       -type drwtsn32 <enter>.

    +style='font-size:9.0pt;font-family:Symbol'>·       type +drwtsn32 <enter>.

    ·       -Select either a Crash Dump Type: Mini or Full.

    +style='font-size:9.0pt;font-family:Symbol'>·       Select +either a Crash Dump Type: Mini or Full.

    ·       -Clear Dump Symbol Table

    +style='font-size:9.0pt;font-family:Symbol'>·       Clear +Dump Symbol Table

    ·       -Clear Append to Existing Log file.

    +style='font-size:9.0pt;font-family:Symbol'>·       Clear +Append to Existing Log file.

    ·       -Check Dump All Thread Contexts.

    +style='font-size:9.0pt;font-family:Symbol'>·       Check +Dump All Thread Contexts.

    ·       -Check Create Crash Dump File

    +style='font-size:9.0pt;font-family:Symbol'>·       Check +Create Crash Dump File

    ·       -Next run the monitoring module of Dr. Watson:

    +style='font-size:9.0pt;font-family:Symbol'>·       Next +run the monitoring module of Dr. Watson:

    ·       -click Start > Run...

    +style='font-size:9.0pt;font-family:Symbol'>·       click +Start > Run...

    ·       -type drwatson <enter>.

    +style='font-size:9.0pt;font-family:Symbol'>·       type +drwatson <enter>.

    ·       -Once a crash happens, Dr. Watson generates a dump file and a -report in the log file, including the address of the crash and the stack dump.

    +style='font-size:9.0pt;font-family:Symbol'>·       Once +a crash happens, Dr. Watson generates a dump file and a report in the log file, +including the address of the crash and the stack dump.

    -

    Once you have the Dr. Watson's logfile and minidump, zip -them and attach them to your e-mail.

    +

    Once you have the Dr. Watson's logfile +and minidump, zip them and attach them to your +e-mail.

    When reporting a error, please be sure to include the version of OpenAFS.

    -

    6. How to Contribute to the Development of OpenAFS for Windows

    Contributions to the development of OpenAFS for Windows are @@ -2517,17 +2673,17 @@ continuously needed.  Contributions may take many forms including cash donations, support contracts, donated developer time, and even donated tech writer time.

    -

    6.1. The USENIX OpenAFS Fund

    USENIX, a 501c3 non-profit corporation, has formed the USENIX OpenAFS Fund in order to accept tax deductible donations on behalf of the OpenAFS Elders. The donated funds -will be allocated by the OpenAFS Elders to fund OpenAFS development, -documentation, project management, and maintaining openafs.org.

    +will be allocated by the OpenAFS Elders to fund OpenAFS development, documentation, +project management, and maintaining openafs.org.

    @@ -2549,24 +2705,24 @@ documentation, project management, and maintaining openafs.org.

    -

    Donations can be made by sending a check, drawn on a U.S. -bank, made out to the USENIX OpenAFS Fund or by making a Donations can be made by sending a check, drawn on a U.S. bank, +made out to the USENIX OpenAFS Fund or by making a donation online.

    -

    6.2. Secure Endpoints Inc.

    Secure Endpoints Inc. provides development and support services for OpenAFS for Windows and MIT Kerberos for Windows. - Donations provided to Secure Endpoints Inc. for the development of OpenAFS -are used to cover the OpenAFS gatekeeper responsibilities; providing support to -the OpenAFS community via the OpenAFS mailing lists; and furthering development -of desired features that are either too small to be financed by development -contracts.

    + Donations provided to Secure Endpoints Inc. for the development of +OpenAFS are used to cover the OpenAFS gatekeeper responsibilities; providing +support to the OpenAFS community via the OpenAFS mailing lists; and furthering +development of desired features that are either too small to be financed by +development contracts.

    Secure Endpoints Inc. accepts software development agreements from organizations who wish to fund a well-defined set of bug fixes @@ -2576,10 +2732,10 @@ or new features.

    the OpenAFS for Windows and the MIT Kerberos for Windows products.

    -

    6.3. Direct contributions of code and/or documentation

    @@ -2588,9 +2744,9 @@ development staffs are encouraged to contribute any code modifications they make to OpenAFS.org via openafs-bugs@openafs.org.  Contributions of documentation are highly desired.

    -

    6.4. OpenAFS for Windows Mailing Lists

    If you wish to participate in OpenAFS for Windows @@ -2609,21 +2765,21 @@ mailing list. 

    You must join the mailing lists if you wish to post to the list without incurring a moderation delay.

    -

    7. MSI Deployment Guide

    -
    -
    + -

    7.1. Introduction

    @@ -2639,9 +2795,9 @@ is advisable to deploy registry settings    and configuration files through group policy and/or startup scripts so that machines where OpenAFS for Windows is already installed will pick up these customizations.

    -

    7.1.1 Requirements

    The information in this document applies to MSI packages @@ -2672,16 +2828,16 @@ href="http://msdn.microsoft.com/library/en-us/msi/setup/transforms.asp">http://m

    The remainder of this document assumes some familiarity with authoring transforms.  While the MSDN documentation for Windows Installer -is a bit dense, the guide on MSI transforms found at the second link above is -recommended reading.  MSDN also includes a step-by-step example for -creating a transform at:

    +is a bit dense, the guide on MSI transforms found at the second link above is recommended +reading.  MSDN also includes a step-by-step example for creating a +transform at:

        http://msdn.microsoft.com/library/en-us/msi/setup/a_customization_transform_example.asp

    -

    7.1.2 Authoring a Transform

    Transforms describe a set of modifications to be performed @@ -2691,60 +2847,64 @@ using the old and the new MSI to generate a transform.  For example:

    1.    copy -openafs.msi openafs-modified.msi

    +openafs.msiopenafs-modified.msi

    2.    (edit -the openafs-modified.msi to include the necessary changes)

    +the openafs-modified.msi to include the necessary +changes)

    3.    msitran --g openafs.msi openafs-modified.msi openafs-transform.mst

    +style='font-size:7.0pt;font-family:"Times New Roman"'>    msitran -g openafs.msiopenafs-modified.msiopenafs-transform.mst

    4.    (generates -openafs-transform.mst, which is the transform)

    +openafs-transform.mst, which is the transform)

    -

    Transforms have an extension of .mst.  'msitran' is a -tool distributed as part of the "Windows Installer" SDK (part of the -Windows Platform SDK).

    +

    Transforms have an extension of .mst.  +'msitran' is a tool distributed as part of the +"Windows Installer" SDK (part of the Windows Platform SDK).

    You can test a transform by:

    1.    copy -openafs.msi openafs-test.msi

    +openafs.msiopenafs-test.msi

    2.    msitran --a openafs-transform.mst openafs-test.msi

    - -

    and then checking the resulting openafs-test.msi to see if -all changes you have made above to openafs-modified.msi is present in -openafs-test.msi.  'msitran' will complain if some modification in the +style='font-size:7.0pt;font-family:"Times New Roman"'>    msitran -a openafs-transform.mst openafs-test.msi

    + +

    and then checking the resulting openafs-test.msi +to see if all changes you have made above to openafs-modified.msi +is present in openafs-test.msi.  'msitran' will complain if some modification in the transform can not be successfully applied.

    As mentioned above, you can use a tool like ORCA.EXE to edit -the MSI databases directly when editing openafs-modified.msi.  More -details are given below.

    +the MSI databases directly when editing openafs-modified.msi.  +More details are given below.

    -

    7.2. Configuration Options

    The logic necessary to implement many of the settings -described in Appendix A are present -in the MSI.  Most of these can be controlled by setting the corresponding -properties to the desired value.  Some settings may require modifying -existing registry entries (though not recommended) or adding new resources -(like files or registry keys).  Instructions for performing these tasks -are below.

    - -

    Appendix A are present in the MSI.  Most of these can be +controlled by setting the corresponding properties to the desired value.  +Some settings may require modifying existing registry entries (though not +recommended) or adding new resources (like files or registry keys).  +Instructions for performing these tasks are below.

    + +

    7.2.1 Configurable Properties

    Most configurable properties correspond to registry keys or @@ -2755,10 +2915,10 @@ the registry key or value will not be touched.  By default, the MSI does not contain these properties and hence will not set the registry keys.  You will need to add properties as needed to the MSI.

    -

    When one of the configurable properties is set, the -installer will use the property value to set the corresponding setting in the -HKEY_LOCAL_MACHINE registry hive.  The HKEY_CURRENT_USER hive is not touched -by the installer.

    +

    When one of the configurable properties is set, the installer +will use the property value to set the corresponding setting in the +HKEY_LOCAL_MACHINE registry hive.  The HKEY_CURRENT_USER hive is not +touched by the installer.

    For each property, the associated registry setting is referenced by the same text used in Appendix @@ -2770,9 +2930,9 @@ into the 'Property' table.

    Numeric values should be authored as decimal strings.

    -

    7.2.1.1 Setting Properties

    In order to set a property,

    @@ -2799,81 +2959,83 @@ style='font-size:7.0pt;font-family:"Times New Roman"'>    &n If the property does not exist in the property list, right click the list and select 'Add Row', type the property name and the desired value.

    -

    7.2.1.2 OpenAFS for Windows Properties

    -
    (Service parameters):
    +
    (Service parameters):

    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters]

    -
    (Network provider):
    +
    (Network provider):

    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider]

    -
    (OpenAFS Client):
    +
    (OpenAFS Client):

    [HKLM\SOFTWARE\OpenAFS\Client]

    -
    7.2.1.2.1 Registry Properties
    -

    These properties are used to set the values of registry entries -associated with OpenAFS for Windows.

    +

    These properties are used to set the values of registry +entries associated with OpenAFS for Windows.

    -
    AFSCACHEPATH

    Registry key    : (Service parameters)

    -

    Registry value : CachePath

    +

    Registry value : CachePath

    Valid values    : string .

    -
    AFSCACHESIZE

    Registry key    : (Service parameters)

    -

    Registry value : CacheSize

    +

    Registry value : CacheSize

    Valid values    : numeric

    -
    AFSCELLNAME

    Registry key    : (Service parameters)

    @@ -2883,37 +3045,40 @@ associated with OpenAFS for Windows.

    -
    FREELANCEMODE

    Registry key    : (Service parameters)

    -

    Registry value : FreelanceClient

    +

    Registry value : FreelanceClient

    Valid values    : '1' or '0'

    -
    HIDEDOTFILES

    Registry key    : (Service parameters)

    -

    Registry value : HideDotFiles

    +

    Registry value : HideDotFiles

    Valid values    : '1' or '0'

    -
    LOGONOPTIONS

    Registry key    : (Network provider)

    -

    Registry value : LogonOptions

    +

    Registry value : LogonOptions

    Valid values    : '0', '1' or '3'

    See Appendix A section 2.1 (Domain specific @@ -2922,123 +3087,132 @@ associated with OpenAFS for Windows.

    -
    MOUNTROOT

    Registry key    : (Service parameters)

    -

    Registry value : Mountroot

    +

    Registry value : Mountroot

    Valid values    : string

    -
    NETBIOSNAME

    Registry key    : (Service parameters)

    -

    Registry value : NetbiosName

    +

    Registry value : NetbiosName

    Valid values    : string (at most 15 characters)

    -
    NOFINDLANABYNAME

    Registry key    : (Service parameters)

    -

    Registry value : NoFindLanaByName

    +

    Registry value : NoFindLanaByName

    Valid values    : '1' or '0'

    -
    RXMAXMTU

    Registry key    : (Service parameters)

    -

    Registry value : RxMaxMTU

    +

    Registry value : RxMaxMTU

    Valid values    : numeric

    -
    SECURITYLEVEL

    Registry key    : (Service parameters)

    -

    Registry value : SecurityLevel

    +

    Registry value : SecurityLevel

    Valid values    : '1' or '0'

    -
    SMBAUTHTYPE

    Registry key    : (Service parameters)

    -

    Registry value : SMBAuthType

    +

    Registry value : SMBAuthType

    Valid values    : '0','1' or '2'

    -
    STOREANSIFILENAMES

    Registry key    : (OpenAFS Client)

    -

    Registry value : StoreAnsiFilenames

    +

    Registry value : StoreAnsiFilenames

    Valid values    : '0' or '1'

    -
    USEDNS

    Registry key    : (Service parameters)

    -

    Registry value : UseDNS

    +

    Registry value : UseDNS

    Valid values    : '1' or '0'

    -
    7.2.1.2.2 AFSCreds.exe Properties

    These properties are combined to add a command line option -to the shortcut that will be created in the Start:Programs:OpenAFS and Start:Programs:Startup -folders (see CREDSSTARTUP).  The method of specifying the option was -chosen for easy integration with the Windows Installer user interface.  -Although other methods can be used to specify options to AFSCREDS.EXE, it is -advised that they be avoided as transforms including such options may not apply -to future releases of OpenAFS.

    +to the shortcut that will be created in the Start:Programs:OpenAFS +and Start:Programs:Startup folders (see +CREDSSTARTUP).  The method of specifying the option was chosen for easy +integration with the Windows Installer user interface.  Although other +methods can be used to specify options to AFSCREDS.EXE, it is advised that they +be avoided as transforms including such options may not apply to future +releases of OpenAFS.

    -
    CREDSSTARTUP

    Valid values    : '1' or '0'

    Controls whether AFSCreds.exe starts up automatically when @@ -3049,9 +3223,9 @@ to future releases of OpenAFS.

    -
    CREDSAUTOINIT

    Valid values    : '-a' or ''

    Enables automatic initialization.

    @@ -3059,9 +3233,9 @@ to future releases of OpenAFS.

    -
    CREDSIPCHDET

    Valid values    : '-n' or ''

    Enables IP address change detection.

    @@ -3069,9 +3243,9 @@ to future releases of OpenAFS.

    -
    CREDSQUIET

    Valid values    : '-q' or ''

    Enables quiet mode.

    @@ -3079,9 +3253,9 @@ to future releases of OpenAFS.

    -
    CREDSRENEWDRMAP

    Valid values    : '-m' or '’

    Enables renewing drive map at startup.

    @@ -3089,9 +3263,9 @@ to future releases of OpenAFS.

    -
    CREDSSHOW

    Valid values    : '-s' or ''

    Enables displaying the credential manager window when @@ -3100,9 +3274,9 @@ to future releases of OpenAFS.

    -

    7.2.2 Existing Registry Entries

    You can change existing registry values subject to the @@ -3111,14 +3285,14 @@ to component key paths and try to only change the 'Value' column in the 'Registry' table.  If you want to add additional registry keys please refer to section 3 (Additional resources).

    -

    7.2.3 Replacing Configuration Files

    -

    The OpenAFS configuration files (CellServDB) can be replaced -by your own configuration files.  These files are contained in separate -MSI components so that you can disable them individually.

    +

    The OpenAFS configuration files (CellServDB) +can be replaced by your own configuration files.  These files are +contained in separate MSI components so that you can disable them individually.

    The recommended method for replacing these files is to first disable the components containing the configuration files that you want to @@ -3129,7 +3303,8 @@ outlined below (assuming you are using ORCA.EXE to author the transform).

    an embedded stream.  The method outlined here places the file in the same directory as the MSI for deployment.

    -

    The walkthrough below is to add a custom 'CellServDB' file.

    +

    The walkthrough below is to add a custom 'CellServDB' file.

    1.   In the Component table, locate the component you need to change ( Ctrl-F invokes the 'Find' dialog).  The component names are listed below in section 7.2.3.1.  For this -example, the component name is 'elf_CellServDB'.

    +example, the component name is 'elf_CellServDB'.

    1.3.1.4.   Enter a condition that evaluates -to false. I.e. 'DONOTINSTALL'. (Note that an undefined property always -evaluates to false).

    +font-family:"Times New Roman"'>   Enter a condition that +evaluates to false. I.e. 'DONOTINSTALL'. (Note that an undefined property +always evaluates to false).

    -

    Note that you can also use this step to disable other -configuration files without providing replacements.

    +

    Note that you can also use this step to disable other configuration +files without providing replacements.

    2.      @@ -3188,13 +3363,13 @@ the following :

    -

    cmf_my_CellServDB

    +

    cmf_my_CellServDB

    -

    ComponentID

    +

    ComponentID

    -

    dirClient

    +

    dirClient

    @@ -3238,29 +3413,31 @@ the following :

    -

    KeyPath

    +

    KeyPath

    -

    fil_my_CellServDB

    +

    fil_my_CellServDB

    -

    Note that the ComponentId is an -uppercase GUID.  You can generate one using GUIDGEN.EXE or UUIDGEN.EXE, -both of which are included in the Platform SDK.

    +

    Note that the ComponentId is an uppercase GUID.  You can generate +one using GUIDGEN.EXE or UUIDGEN.EXE, both of which are included in the +Platform SDK.

    The Attributes value of 144 is a -sum of msidbComponentAttributesPermanent (16) and -msidbComponentAttributesNeverOverwrite (128).  This ensures that local -modifications are not overwritten or lost during an installation or -uninstallation.  These are the same settings used on the default -configuration files.

    +sum of msidbComponentAttributesPermanent (16) and msidbComponentAttributesNeverOverwrite (128).  This +ensures that local modifications are not overwritten or lost during an +installation or uninstallation.  These are the +same settings used on the default configuration files.

                -'fil_my_CellServDB' is a key into the 'File' table which we will fill later.

    +'fil_my_CellServDB' is a key into the 'File' table +which we will fill later.

    3.      @@ -3283,18 +3460,18 @@ new row (Ctrl-R or 'Tables'->'Add Row') with the following values:

    -

    fea_my_CellServDB

    +

    fea_my_CellServDB

    -

    Feature_Parent

    +

    Feature_Parent

    -

    feaClient

    +

    feaClient

    @@ -3365,19 +3542,20 @@ new row (Ctrl-R or 'Tables'->'Add Row') with the following values:

    -

    It is important to create the new -feature under the 'feaClient' feature, which will ensure that the configuration -file will be installed when the client binaries are installed.

    +

    It is important to create the +new feature under the 'feaClient' feature, which will +ensure that the configuration file will be installed when the client binaries +are installed.

    Setting 'Display' to 0 will hide -this feature from the feature selection dialog during an interactive installation.  -A value of 30 for 'Level' allows this feature to be installed by default (on a -'Typical' installation).

    +this feature from the feature selection dialog during an interactive +installation.  A value of 30 for 'Level' allows this feature to be +installed by default (on a 'Typical' installation).

    -

    The 'Attributes' value is -msidbFeatureAttributesDisallowAdvertise (8), which is set on all features in -the OpenAFS MSI.  The OpenAFS MSI is not designed for an advertised -installation.

    +

    The 'Attributes' value is msidbFeatureAttributesDisallowAdvertise (8), which is set +on all features in the OpenAFS MSI.  The OpenAFS MSI is not designed for +an advertised installation.

    4.      @@ -3385,7 +3563,7 @@ style='font-size:7.0pt;font-family:"Times New Roman"'>    &n

    4.1.   Select -the 'FeatureComponents' table.

    +the 'FeatureComponents' table.

    4.2.   Add a @@ -3400,7 +3578,7 @@ new row with the following values:

    -

    fea_my_CellServDB

    +

    fea_my_CellServDB

    @@ -3411,7 +3589,7 @@ new row with the following values:

    -

    cmf_my_CellServDB

    +

    cmf_my_CellServDB

    @@ -3437,7 +3615,7 @@ new row with the following values:

    -

    fil_my_CellServDB

    +

    fil_my_CellServDB

    @@ -3448,24 +3626,24 @@ new row with the following values:

    -

    cmf_my_CellServDB

    +

    cmf_my_CellServDB

    -

    FileName

    +

    FileName

    -

    CellServDB

    +

    CellServDB

    -

    FileSize

    +

    FileSize

    The 'Attributes' value is -msidbFileAttributesNonCompressed (8192).  This is because we will be -placing this file in the same directory as the MSI instead of embedding the -file in it.  Transforms do not support updating compressed sources or -adding new cabinet streams.

    +

    The 'Attributes' value is msidbFileAttributesNonCompressed (8192).  This is +because we will be placing this file in the same directory as the MSI instead +of embedding the file in it.  Transforms do not support updating +compressed sources or adding new cabinet streams.

    Finally, the 'Sequence' value of 1000 will be used later to distinguish the file as being in a separate source @@ -3527,7 +3705,7 @@ row with the following values :

    -

    DiskId

    +

    DiskId

    @@ -3537,7 +3715,7 @@ row with the following values :

    -

    LastSequence

    +

    LastSequence

    The sequence number of 1000 designates -this as the media source for the newly added file.

    +

    The sequence number of 1000 +designates this as the media source for the newly added file.

    -

    7.2.3.1 Components for Configuration Files

    -

    CellServDB: -'cpf_CellServDB' (ID {D5BA4C15-DBEC-4292-91FC-B54C30F24F2A})

    +

    CellServDB: +'cpf_CellServDB' (ID +{D5BA4C15-DBEC-4292-91FC-B54C30F24F2A})

    -

    7.2.4 Adding Domain Specific Registry Keys

    Following is an example for adding domain specific registry keys.

        Refer to Appendix A section 2.1 for more -information.

    +href="#_Appendix_A:_Registry_Values">Appendix A +section 2.1 for more information.

    -

        Columns that are unspecified should be -left empty.

    +

        Columns that are unspecified should be left +empty.

    -

        We create a new feature and component to hold -the new registry keys.

    +

        We create a new feature and component to +hold the new registry keys.

    @@ -3591,17 +3770,17 @@ the new registry keys.

                (new row)
                - Feature            : - 'feaDomainKeys'
    + Feature            : 'feaDomainKeys'
                Feature - Parent : 'feaClient'
    + Parent : 'feaClient'
                Display           : 0
                Level               : 30
    -             Attributes        - : 10

    +             + Attributes        : 10

    @@ -3614,20 +3793,23 @@ the new registry keys.

                (new row)
                - Component     : 'rcm_DomainKeys'
    -             - ComponentId  : '{4E3FCBF4-8BE7-40B2-A108-C47CF743C627}'
    -             - Directory         : 'TARGETDIR'
    + Component     : 'rcm_DomainKeys'
    +             ComponentId  : + '{4E3FCBF4-8BE7-40B2-A108-C47CF743C627}'
    +             Directory         + : 'TARGETDIR'
                Attributes        : 4
    -             - KeyPath          : 'reg_domkey0'

    +             KeyPath          + : 'reg_domkey0'

    @@ -3635,10 +3817,10 @@ the new registry keys.

                (new row)
                - Feature            : - 'feaDomainKeys'
    + Feature            : 'feaDomainKeys'
                - Component     : 'rcm_DomainKeys'

    + Component     : 'rcm_DomainKeys'

    @@ -3658,10 +3840,9 @@ the new registry keys.

    : 2
                Key                 - : - 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain'
    + : 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain'
                - Component     : 'rcm_DomainKeys'

    + Component     : 'rcm_DomainKeys'

    @@ -3676,13 +3857,12 @@ the new registry keys.

    : 2
                Key                 - : - 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain'
    + : 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain'
                Name              : '*'
                - Component     : 'rcm_DomainKeys'

    + Component     : 'rcm_DomainKeys'

    @@ -3697,13 +3877,12 @@ the new registry keys.

    : 2
                Key                 - : - 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\ATHENA.MIT.EDU'
    + : 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\ATHENA.MIT.EDU'
                Name              : '*'
                - Component     : 'rcm_DomainKeys'

    + Component     : 'rcm_DomainKeys'

    @@ -3718,23 +3897,25 @@ the new registry keys.

    : 2
                Key                 - : 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\ATHENA.MIT.EDU'
    + : + 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\ATHENA.MIT.EDU'
                Name              - : 'LogonOptions'
    + : 'LogonOptions'
                Value              : 1
                - Component     : 'rcm_DomainKeys'

    + Component     : 'rcm_DomainKeys'

    @@ -3761,15 +3942,15 @@ the new registry keys.

    : 2
                Key                 - : - 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\LOCALHOST'
    -             Name              - : 'LogonOptions'
    + : 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\LOCALHOST'
    +             + Name              + : 'LogonOptions'
                Value              : 0
                - Component     : 'rcm_DomainKeys'

    + Component     : 'rcm_DomainKeys'

    @@ -3784,15 +3965,16 @@ the new registry keys.

    : 2
                Key                 - : 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\LOCALHOST'
    + : + 'SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\LOCALHOST'
                Name              - : 'FailLoginsSilently'
    + : 'FailLoginsSilently'
                Value              : 1
                - Component     : 'rcm_DomainKeys'

    + Component     : 'rcm_DomainKeys'

    -

        'FeatureComponents' table:

    +

        'FeatureComponents' + table:

                (new row)
    -             Registry          - : 'reg_domkey4'
    +             + Registry          : + 'reg_domkey4'
                Root                : 2
    @@ -3746,7 +3927,7 @@ the new registry keys.

    Name              : '*'
                - Component     : 'rcm_DomainKeys'

    + Component     : 'rcm_DomainKeys'

    @@ -3803,15 +3985,15 @@ the new registry keys.

    (enable integrated logon) and 'LOCALHOST' (disable integrated logon and fail logins silently).

    -

    7.2.5 Adding Site Specific Freelance Registry Keys

    Following is an example for adding site specific Freelance -registry keys to pre-populate the Mountpoints and Symlinks in the fake root.afs -volume.

    +registry keys to pre-populate the Mountpoints and +Symlinks in the fake root.afs volume.

        Columns that are unspecified should be left empty.

    @@ -3828,13 +4010,13 @@ hold the new registry keys.

    -

                - (new row)
    +

        +         (new row)
                - Feature            : - 'feaFreelanceKeys'
    + Feature            : 'feaFreelanceKeys'
                Feature - Parent : 'feaClient'
    + Parent : 'feaClient'
                Display           : 0
                @@ -3854,21 +4036,23 @@ hold the new registry keys.

                (new row)
                - Component     : 'rcm_FreelanceKeys'
    -             - ComponentId  : '{4E3B3CBF4-9AE7-40C3-7B09-C48CF842C583}'
    + Component     : 'rcm_FreelanceKeys'
    +             ComponentId  : + '{4E3B3CBF4-9AE7-40C3-7B09-C48CF842C583}'
                Directory         : 'TARGETDIR'
                Attributes        : 4
    -             - KeyPath          : - 'reg_freekey0'

    +             KeyPath          + : 'reg_freekey0'

    -

        'FeatureComponents' table:

    +

        'FeatureComponents' + table:

    @@ -3876,10 +4060,10 @@ hold the new registry keys.

                (new row)
                - Feature            : - 'feaFreelanceKeys'
    + Feature            : 'feaFreelanceKeys'
                - Component     : 'rcm_FreelanceKeys'

    + Component     : 'rcm_FreelanceKeys'

    @@ -3901,7 +4085,7 @@ hold the new registry keys.

    Key                 : 'SOFTWARE\OpenAFS\Client\Freelance'
                - Component     : 'rcm_FreelanceKeys'

    + Component     : 'rcm_FreelanceKeys'

    @@ -3922,9 +4106,9 @@ hold the new registry keys.

    : '0'
                Value           -    : 'athena.mit.edu#athena.mit.edu:root.cell.'
    -             - Component     : 'rcm_FreelanceKeys'

    +    : 'athena.mit.edu#athena.mit.edu:root.cell.'
    +             Component     + : 'rcm_FreelanceKeys'

    @@ -3943,11 +4127,10 @@ hold the new registry keys.

                Name              : '1'
    -             - Value           -    : '.athena.mit.edu%athena.mit.edu:root.cell.'
    +             Value           +    : '.athena.mit.edu%athena.mit.edu:root.cell.'
                - Component     : 'rcm_FreelanceKeys'

    + Component     : 'rcm_FreelanceKeys'

    @@ -3964,7 +4147,7 @@ hold the new registry keys.

    Key                 : 'SOFTWARE\OpenAFS\Client\Freelance\Symlinks'
                - Component     : 'rcm_FreelanceKeys'

    + Component     : 'rcm_FreelanceKeys'

    @@ -3987,7 +4170,7 @@ hold the new registry keys.

    Value              : 'athena:athena.mit.edu.'
                - Component     : 'rcm_FreelanceKeys'

    + Component     : 'rcm_FreelanceKeys'

    @@ -3995,8 +4178,7 @@ hold the new registry keys.

                (new row)
                - Registry          : - 'reg_freekey5'
    + Registry          : 'reg_freekey5'
                Root                : 2
    @@ -4010,19 +4192,20 @@ hold the new registry keys.

    Value              : '.athena:.athena.mit.edu.'
                - Component     : 'rcm_FreelanceKeys'

    + Component     : 'rcm_FreelanceKeys'

    -

    The example adds a read-only mountpoint to the athena.mit.edu -cell's root.afs volume as well as a read-write mountpoint.  Aliases are -also provided using symlinks.

    +

    The example adds a read-only mountpoint +to the athena.mit.edu cell's root.afs volume as well +as a read-write mountpoint.  Aliases are also +provided using symlinks.

    -

    7.3 Additional Resources

    If you want to add registry keys or files you need to create @@ -4039,14 +4222,15 @@ details.  The relevant section is at :

    A sample walkthrough of adding a new configuration file is in section 2.3.

    -

    Add new features under the 'feaClient' or 'feaServer' as -appropriate and set the 'Level' column for those features to equal the 'Level' -for their parent features for consistency.  Note that none of the features -in the OpenAFS for Windows MSI package are designed to be installed to run from -'source' or 'advertised'.  It is recommended that you set -'msidbFeatureAttributesFavorLocal' (0), 'msidbFeatureAttributesFollowParent' -(2) and 'msidbFeatureAttributesDisallowAdvertise' (8) attributes for new -features.

    +

    Add new features under the 'feaClient' +or 'feaServer' as appropriate and set the 'Level' +column for those features to equal the 'Level' for their parent features for +consistency.  Note that none of the features in the OpenAFS for Windows +MSI package are designed to be installed to run from 'source' or +'advertised'.  It is recommended that you set 'msidbFeatureAttributesFavorLocal' +(0), 'msidbFeatureAttributesFollowParent' (2) and 'msidbFeatureAttributesDisallowAdvertise' (8) attributes for +new features.

    If you are creating new components, retain the same component GUID when creating new transforms against new releases of the OpenAFS @@ -4055,19 +4239,19 @@ MSI package.

    After making the adjustments to the MSI database using ORCA.EXE you can generate a transform with MSITRAN.EXE as follows :

    -

    (Modified MSI package is 'openafs-en_US_new.msi' and the -original MSI package is 'openafs-en_US.msi'.  Generates transform -'openafs-transform.mst')

    +

    (Modified MSI package is 'openafs-en_US_new.msi' +and the original MSI package is 'openafs-en_US.msi'.  +Generates transform 'openafs-transform.mst')

    -

        > msitran.exe -g openafs-en_US.msi -openafs-en_US_new.msi openafs-transform.mst

    +

        > msitran.exe -g openafs-en_US.msi +openafs-en_US_new.msi openafs-transform.mst

    See the Platform SDK documentation for information on command line options for MSITRAN.EXE.

    -

    7.4. Upgrades

    @@ -4088,7 +4272,7 @@ Up to current release

    2)      -MIT's Transarc AFS MSI package
    +MIT's Transarc AFS MSI package
    Upgrade code {5332B94F-DE38-4927-9EAB-51F4A64193A7}
    Up to version 3.6.2

    @@ -4100,35 +4284,37 @@ All versions

    Note that versions of the OpenAFS NSIS package prior to 1.3.65 had a bug where it couldn't be uninstalled properly in unattended mode.  Therefore the MSI package will not try to uninstall an OpenAFS NSIS -package if running unattended.  This means that group policy based -deployments will fail on machines that have the OpenAFS NSIS package installed.

    +package if running unattended.  This means that group policy based deployments +will fail on machines that have the OpenAFS NSIS package installed.

    If you have used a different MSI package to install OpenAFS and wish to upgrade it you can author rows into the 'Upgrade' table as described in the Platform SDK.

    When performing an upgrade with msiexec.exe execute the MSI -with the repair options "vomus".

    +with the repair options "vomus".

    -

    Appendix A: Registry Values

    -

    A.1. Service parameters

    The service parameters primarily affect the behavior of the AFS client service (afsd_service.exe).

    -

    Regkey:
    +class=SpellE>Regkey
    :
    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters]

    Regkey:
    @@ -4182,52 +4371,55 @@ style='mso-bookmark:_Toc115416200'>Regkey:
    @@ -4484,54 +4690,55 @@ style='mso-bookmark:_Toc115416200'>Regkey:
    + + + - +
    -
    Value: LANadapter
    +
    Value: LANadapter

    Type: DWORD
    Default: -1
    - Variable: LANadapter

    -

    LAN adapter number to use.  This is the lana number - of the LAN adapter that the SMB server should bind to.  If unspecified - or set to -1, a LAN adapter with named 'AFS' or a loopback adapter will be - selected.  If neither are present, then all available adapters will be - bound to.  When binding to a non-loopback adapter, the NetBIOS name - hostname%-AFS' will be used (where %hostname% is the NetBIOS name of the host - truncated to 11 characters). Otherwise, the NetBIOS name will be 'AFS'.

    + Variable: LANadapter

    +

    LAN adapter number to use.  This is the lana number of the LAN adapter that the SMB server should + bind to.  If unspecified or set to -1, a LAN adapter with named 'AFS' or + a loopback adapter will be selected.  If neither are present, then all + available adapters will be bound to.  When binding to a non-loopback + adapter, the NetBIOS name hostname%-AFS' will be used (where %hostname% is + the NetBIOS name of the host truncated to 11 characters). Otherwise, the + NetBIOS name will be 'AFS'.

    -
    Value: CacheSize
    +
    Value: CacheSize

    Type: DWORD
    Default: 98304 (CM_CONFIGDEFAULT_CACHESIZE)
    - Variable: cm_initParams.cacheSize

    + Variable: cm_initParams.cacheSize

    Size of the AFS cache in 1k blocks.

    -
    Value: ChunkSize
    +
    Value: ChunkSize

    Type: DWORD
    Default: 17 (CM_CONFIGDEFAULT_CHUNKSIZE)
    - Variable: cm_logChunkSize (cm_chunkSize = 1 << cm_logChunkSize)

    + Variable: cm_logChunkSize (cm_chunkSize + = 1 << cm_logChunkSize)

    Size of chunk for reading and writing. Actual chunk size is 2^cm_logChunkSize.

    -
    Value: Daemons

    Type: DWORD
    Default: 2 (CM_CONFIGDEFAULT_DAEMONS)
    - Variable: numBkgD

    -

    Number of background daemons (number of threads of - cm_BkgDaemon). (see cm_BkgDaemon in cm_daemon.c)

    + Variable: numBkgD

    +

    Number of background daemons (number of threads of cm_BkgDaemon). (see cm_BkgDaemon + in cm_daemon.c)

    -
    Value: ServerThreads
    +
    Value: ServerThreads

    Type: DWORD
    Default: 25 (CM_CONFIGDEFAULT_SVTHREADS)
    - Variable: numSvThreads

    -

    Number of SMB server threads (number of threads of - smb_Server). (see smb_Server in smb.c).

    + Variable: numSvThreads

    +

    Number of SMB server threads (number of threads of smb_Server). (see smb_Server in + smb.c).

    -
    Value: Stats

    Type: DWORD
    Default: 10000 (CM_CONFIGDEFAULT_STATS)
    - Variable: cm_initParams.nStatCaches

    + Variable: cm_initParams.nStatCaches

    Cache configuration.

    -
    Value: LogoffPreserveTokens
    +
    Value: LogoffPreserveTokens

    Type: DWORD {1,0}
    Default : 0

    If enabled (set to 1), the Logoff Event handler will not @@ -4238,46 +4430,50 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -
    Value: RootVolume
    +
    Value: RootVolume

    Type: REG_SZ
    - Default: "root.afs"
    - Variable: cm_rootVolumeName

    + Default: "root.afs"
    + Variable: cm_rootVolumeName

    Root volume name.

    -
    Value: MountRoot
    +
    Value: MountRoot

    Type: REG_SZ
    - Default: "/afs"
    - Variable: cm_mountRoot

    + Default: "/afs"
    + Variable: cm_mountRoot

    Name of root mount point.  In symlinks, if a path - starts with cm_mountRoot, it is assumed that the path is absolute (as opposed - to relative) and is adjusted accordingly. Eg: if a path is specified as - /afs/athena.mit.edu/foo/bar/baz and cm_mountRoot is "/afs", then - the path is interpreted as \\afs\all\athena.mit.edu\foo\bar\baz.  If a - path does not start with with cm_mountRoot, the path is assumed to be - relative and suffixed to the reference directory (i.e. directory where the - symlink exists)

    + starts with cm_mountRoot, it is assumed that the + path is absolute (as opposed to relative) and is adjusted accordingly. Eg: if a path is specified as /afs/athena.mit.edu/foo/bar/baz + and cm_mountRoot is "/afs", + then the path is interpreted as \\afs\all\athena.mit.edu\foo\bar\baz.  + If a path does not start with with cm_mountRoot, the path is assumed to be relative and + suffixed to the reference directory (i.e. directory where the symlink exists)

    -
    Value: CachePath
    +
    Value: CachePath

    Type: REG_SZ or REG_EXPAND_SZ
    - Default: "%TEMP%\AFSCache"
    - Variable: cm_CachePath

    + Default: "%TEMP%\AFSCache"
    + Variable: cm_CachePath

    Location of on-disk cache file.  The default is the SYSTEM account's TEMP directory.  The attributes assigned to the file are HIDDEN and SYSTEM.

    @@ -4286,30 +4482,31 @@ style='mso-bookmark:_Toc115416200'>Regkey:
    -
    Value: NonPersistentCaching
    +
    Value: NonPersistentCaching

    Type: DWORD [0..1]
    Default: 0
    - Variable: buf_CacheType

    + Variable: buf_CacheType

    When this registry value is set to a non-zero value, the - CachePath value is ignored and the cache data is stored in the windows paging - file.  This prevents the use of persistent caching (when available) as - well as the ability to alter the size of the cache at runtime using the - "fs setcachesize" command.

    + CachePath value is ignored and the cache data is + stored in the windows paging file.  This prevents the use of persistent + caching (when available) as well as the ability to alter the size of the + cache at runtime using the "fs setcachesize" command.

    -
    Value: ValidateCache
    +
    Value: ValidateCache

    Type: DWORD [0..2]
    Default: 1
    - Variable: buf_CacheType

    + Variable: buf_CacheType

    This value determines if and when persistent cache validation is performed.

    0 - Validation is disabled
    @@ -4320,27 +4517,28 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -
    Value: TrapOnPanic
    +
    Value: TrapOnPanic

    Type: DWORD {1,0}
    Default: 0
    - Variable: traceOnPanic

    + Variable: traceOnPanic

    Issues a breakpoint in the event of a panic. - (breakpoint: _asm int 3).

    + (breakpoint: _asm int 3).

    -
    Value: NetbiosName
    +
    Value: NetbiosName

    Type: REG_EXPAND_SZ
    Default: "AFS"
    - Variable: cm_NetbiosName

    + Variable: cm_NetbiosName

    Specifies the NetBIOS name to be used when binding to a Loopback adapter.  To provide the old behavior specify a value of  "%COMPUTERNAME%-AFS".

    @@ -4349,33 +4547,34 @@ style='mso-bookmark:_Toc115416200'>Regkey:
    -
    Value: IsGateway
    +
    Value: IsGateway

    Type: DWORD {1,0}
    Default: 0
    - Variable: isGateway

    + Variable: isGateway

    Select whether or not this AFS client should act as a gateway.  If set and the NetBIOS name hostname-AFS is bound to a physical NIC, other machines in the subnet can access AFS via SMB connections to hostname-AFS.

    -

    When IsGateway is non-zero, the LAN adapter detection - code will avoid binding to a loopback adapter.  This will ensure that - the NetBIOS name will be of the form hostname-AFS instead of the value set by - the "NetbiosName" registry value.

    +

    When IsGateway is non-zero, + the LAN adapter detection code will avoid binding to a loopback + adapter.  This will ensure that the NetBIOS name will be of the form + hostname-AFS instead of the value set by the "NetbiosName" + registry value.

    -
    Value: ReportSessionStartups
    +
    Value: ReportSessionStartups

    Type: DWORD {1,0}
    Default: 0
    - Variable: reportSessionStartups

    + Variable: reportSessionStartups

    If enabled, all SMB sessions created are recorded in the Application event log.  This also enables other events such as drive mappings or various error types to be logged.

    @@ -4384,99 +4583,106 @@ style='mso-bookmark:_Toc115416200'>Regkey:
    -
    Value: TraceBufferSize
    +
    Value: TraceBufferSize

    Type: DWORD
    Default: 5000 (CM_CONFIGDEFAULT_TRACEBUFSIZE)
    - Variable: traceBufSize

    + Variable: traceBufSize

    Number of entries to keep in trace log.

    -
    Value: SysName
    +
    Value: SysName

    Type: REG_SZ
    Default: "x86_win32 i386_w2k i386_nt40" (X86)
    “amd64_win64 x86_win32 i386_w2k” (AMD64)
    - Variable: cm_sysName

    -

    Provides an initial value for "fs - sysname".  The string can contain one or more replacement values - for @sys in order of preference separated by whitespace.

    + Variable: cm_sysName

    +

    Provides an initial value for "fs + sysname".  The string can contain one or + more replacement values for @sys in order of preference separated by + whitespace.

    -
    Value: SecurityLevel
    +
    Value: SecurityLevel

    Type: DWORD {1,0}
    Default: 0
    - Variable: cryptall

    + Variable: cryptall

    Enables encryption on RX calls.

    -
    Value: UseDNS
    +
    Value: UseDNS

    Type: DWORD {1,0}
    Default: 1
    - Variable: cm_dnsEnabled

    -

    Enables resolving volservers using AFSDB DNS queries.

    + Variable: cm_dnsEnabled

    +

    Enables resolving volservers + using AFSDB DNS queries.

    As of 1.3.60, this value is ignored as the DNS query - support utilizes the Win32 DNSQuery API which is available on Win2000 and above.

    + support utilizes the Win32 DNSQuery API which is + available on Win2000 and above.

    -
    Value: FreelanceClient
    +
    Value: FreelanceClient

    Type: DWORD {1,0}
    Default: 0
    - Variable: cm_freelanceEnabled

    + Variable: cm_freelanceEnabled

    Enables freelance client.

    -
    Value: HideDotFiles
    +
    Value: HideDotFiles

    Type: DWORD {1,0}
    Default: 1
    - Variable: smb_hideDotFiles

    -

    Enables marking dotfiles with the hidden - attribute.  Dot files are files whose name starts with a period - (excluding "." and "..").

    + Variable: smb_hideDotFiles

    +

    Enables marking dotfiles with + the hidden attribute.  Dot files are files whose name starts with a + period (excluding "." and "..").

    -
    Value: MaxMpxRequests
    +
    Value: MaxMpxRequests

    Type: DWORD
    Default: 50
    - Variable: smb_maxMpxRequests

    + Variable: smb_maxMpxRequests

    Maximum number of multiplexed SMB requests that can be made.

    -
    Value: MaxVCPerServer
    +
    Value: MaxVCPerServer

    Type: DWORD
    Default: 100
    - Variable: smb_maxVCPerServer

    + Variable: smb_maxVCPerServer

    Maximum number of SMB virtual circuits.

    -
    Value: Cell

    Type: REG_SZ
    Default: <none>
    - Variable: rootCellName

    -

    Name of root cell (the cell from which root.afs should - be mounted in \\afs\all).

    + Variable: rootCellName

    +

    Name of root cell (the cell from which root.afs should be mounted in \\afs\all).

    -
    Value: RxNoJumbo
    +
    Value: RxNoJumbo

    Type: DWORD {0,1}
    Default: 0
    - Variable: rx_nojumbo

    + Variable: rx_nojumbo

    If enabled, does not send or indicate that we are able - to send or receive RX jumbograms.

    + to send or receive RX jumbograms.

    -
    Value: RxMaxMTU
    +
    Value: RxMaxMTU

    Type: DWORD
    Default: -1
    - Variable: rx_mtu

    + Variable: rx_mtu

    If set to anything other than -1, uses that value as the maximum MTU supported by the RX interface.

    In order to enable OpenAFS to operate across the Cisco @@ -4541,17 +4748,18 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -
    Value: ConnDeadTimeout
    +
    Value: ConnDeadTimeout

    Type: DWORD
    Default: 60 (seconds)
    - Variable: ConnDeadtimeout

    + Variable: ConnDeadtimeout

    The Connection Dead Time is enforced to be at a minimum 15 seconds longer than the minimum SMB timeout as specified by - [HKLM\SYSTEM\CurrentControlSet\Services\lanmanworkstation\parameters] - SessTimeout

    + [HKLM\SYSTEM\CurrentControlSet\Services\lanmanworkstation\parameters] SessTimeout

    If the minimum SMB timeout is not specified the value is 45 seconds.  See http://support.microsoft.com:80/support/kb/articles/Q102/0/67.asp

    @@ -4560,74 +4768,82 @@ style='mso-bookmark:_Toc115416200'>Regkey:
    -
    Value: HardDeadTimeout
    +
    Value: HardDeadTimeout

    Type: DWORD
    Default: 120 (seconds)
    - Variable: HardDeadtimeout

    + Variable: HardDeadtimeout

    The Hard Dead Time is enforced to be at least double the - ConnDeadTimeout.  The provides an opportunity for at least one retry.

    + ConnDeadTimeout.  The provides an opportunity + for at least one retry.

    -
    Value: TraceOption
    +
    Value: TraceOption

    Type: DWORD {0-15}
    Default: 0

    Enables logging of debug output to the Windows Event Log.

    Bit 0 enables logging of "Logon Events" - processed by the Network Provider and Winlogon Event Notification - Handler. 

    + processed by the Network Provider and Winlogon + Event Notification Handler. 

    Bit 1 enables logging of events captured by the AFS Client Service.

    -

    Bit 2 enables real-time viewing of "fs trace" - logging with DbgView or similar tools.

    -

    Bit 3 enables "fs trace" logging on startup.

    +

    Bit 2 enables real-time viewing of "fs trace" logging with DbgView + or similar tools.

    +

    Bit 3 enables "fs + trace" logging on startup.

    -
    Value: AllSubmount
    +
    Value: AllSubmount

    Type: DWORD {0, 1}
    Default: 1

    -

    Variable: allSubmount (smb.c)

    +

    Variable: allSubmount (smb.c)

    By setting this value to 0, the "\\NetbiosName\all" mount point will not be created.  This - allows the read-write versions of root.afs to be hidden.

    + allows the read-write versions of root.afs to be + hidden.

    -
    Value: NoFindLanaByName
    +
    Value: NoFindLanaByName

    Type: DWORD {0, 1}
    Default: 0

    -

    Disables the attempt to identity the network adapter to - use by looking for an adapter with a display name of "AFS".

    +

    Disables the attempt to identity the network adapter to use + by looking for an adapter with a display name of "AFS".

    -
    Value: MaxCPUs
    -

    Type: DWORD {1..32} or {1..64} depending on the architecture
    +

    Value: MaxCPUs
    +

    Type: DWORD {1..32} or {1..64} depending on the + architecture
    Default: <no default>

    If this value is specified, afsd_service.exe will restrict itself to executing on the specified number of CPUs if there are a @@ -4637,10 +4853,11 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -
    Value: smbAuthType
    +
    Value: smbAuthType

    Type: DWORD {0..2}
    Default: 2

    If this value is specified, it defines the type of SMB @@ -4655,25 +4872,27 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -
    Value: MaxLogSize
    +
    Value: MaxLogSize

    Type: DWORD {0 .. MAXDWORD}
    Default: 100K

    This entry determines the maximum size of the - %WINDIR%\TEMP\afsd_init.log file.  If the file is larger than this value - when afsd_service.exe starts the file will be reset to 0 bytes.  If this - value is 0, it means the file should be allowed to grow indefinitely.

    + %WINDIR%\TEMP\afsd_init.log file.  If the file + is larger than this value when afsd_service.exe starts the file will be reset + to 0 bytes.  If this value is 0, it means the file should be allowed to + grow indefinitely.

    -
    Value: FlushOnHibernate
    +
    Value: FlushOnHibernate

    Type: DWORD {0,1}
    Default: 1

    If set, flushes all volumes before the machine goes on @@ -4683,8 +4902,9 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -
    Value: daemonCheckDownInterval
    +
    Value: daemonCheckDownInterval

    Type: DWORD (seconds)
    Default: 180

    This @@ -4695,8 +4915,9 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -
    Value: daemonCheckUpInterval
    +
    Value: daemonCheckUpInterval

    Type: DWORD (seconds)
    Default: 600

    This value controls how frequently the AFS cache manager @@ -4706,8 +4927,9 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -
    Value: daemonCheckVolInterval
    +
    Value: daemonCheckVolInterval

    Type: DWORD (seconds)
    Default: 3600

    This @@ -4718,19 +4940,22 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -
    Value: daemonCheckCBInterval
    +
    Value: daemonCheckCBInterval

    Type: DWORD (seconds)
    Default: 60

    This - value controls how frequently the AFS cache manager checks for callback invalidation.

    + value controls how frequently the AFS cache manager checks for callback + invalidation.

    -
    Value: daemonCheckLockInterval
    +
    Value: daemonCheckLockInterval

    Type: DWORD (seconds)
    Default: 60

    This @@ -4741,8 +4966,9 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -
    Value: daemonTokenCheckInterval
    +
    Value: daemonCheckTokenInterval

    Type: DWORD (seconds)
    Default: 180

    This @@ -4753,8 +4979,22 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -
    Value: CallBackPort
    +
    Value: daemonCheckOfflineVolInterval
    +

    Type: DWORD (seconds)
    + Default: 600

    +

    This value controls how frequently the AFS cache manager + checks offline volumes to see if they have come back online.  At the same time volumes which were + determined to be busy have their state reset to online.

    +
    +
    Value: CallBackPort

    Type: DWORD
    Default: 7001

    This value specifies which port number should be used @@ -4765,12 +5005,12 @@ style='mso-bookmark:_Toc115416200'>Regkey:
    configured.

    -
    Value: EnableServerLocks
    +
    Value: EnableServerLocks

    Type: DWORD {0, 1, 2}
    Default: 1

    Determines whether or not the AFS file server is @@ -4785,10 +5025,12 @@ style='mso-bookmark:_Toc115416200'>Regkey:

    -

    Regkey:
    +class=SpellE>Regkey
    :
    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters\GlobalAutoMapper]

    Regkey:
    height:65.0pt'>
    -
    Value: <Drive Letter:> for example "G:"

    Type: REG_SZ

    -

    Specifies the submount name to be mapped by - afsd_service.exe at startup to the provided drive letter.

    +

    Specifies the submount name to + be mapped by afsd_service.exe at startup to the provided drive letter.

    This option is deprecated.

    -

    Regkey:
    +class=SpellE>Regkey
    :
    [HKLM\SOFTWARE\OpenAFS\Client]

    Regkey:
    -
    Value: CellServDBDir
    +
    Value: CellServDBDir

    Type: REG_SZ
    Default: <not defined>

    -

    Specifies the directory containing the CellServDB - file.  When this value is not specified, the AFS Client install - directory is used.

    +

    Specifies the directory containing the CellServDB file.  When this value is not specified, + the AFS Client install directory is used.

    -
    Value: VerifyServiceSignature
    +
    Value: VerifyServiceSignature

    Type: REG_DWORD
    Default: 0x1

    This value can be used to disable the runtime @@ -4856,78 +5102,85 @@ style='mso-bookmark:_Toc115416239'>Regkey:

    -
    Value: IoctlDebug
    +
    Value: IoctlDebug

    Type: REG_DWORD
    Default: 0x0

    -

    This value can be used to debug the cause of pioctl() - failures.  Set a non-zero value and the pioctl() library will output - status information to stdout.  Executing command line tools such as - tokens.exe, fs.exe, etc can then be used to determine why the pioctl() call - is failing.

    +

    This value can be used to debug the cause of pioctl() failures.  Set a non-zero value and the pioctl() library will output status information to stdout.  Executing command line tools such as + tokens.exe, fs.exe, etc can then be used to determine why the pioctl() call is failing.

    -
    Value: MiniDumpType
    +
    Value: MiniDumpType

    Type: REG_DWORD
    - Default: 0x0 (MiniDumpNormal)

    -

    This value is used to specify the type of minidump - generated by afsd_service.exe either when the process crashes or when a user - initiated is dump file is generated with the "fs.exe minidump" - command.

    + Default: 0x0 (MiniDumpNormal)

    +

    This value is used to specify the type of minidump generated by afsd_service.exe either when the + process crashes or when a user initiated is dump file is generated with the + "fs.exe minidump" command.

    Valid values are dependent on the version of DbgHelp.dll installed on the machine.  See the Microsoft Developer Library for further information.

    -

    MiniDumpNormal = 0x00000000,
    - MiniDumpWithDataSegs = 0x00000001,
    - MiniDumpWithFullMemory = 0x00000002,
    - MiniDumpWithHandleData = 0x00000004,
    - MiniDumpFilterMemory = 0x00000008,
    - MiniDumpScanMemory = 0x00000010,
    - MiniDumpWithUnloadedModules = 0x00000020,
    - MiniDumpWithIndirectlyReferencedMemory = 0x00000040,
    - MiniDumpFilterModulePaths = 0x00000080,
    - MiniDumpWithProcessThreadData = 0x00000100,
    - MiniDumpWithPrivateReadWriteMemory = 0x00000200,
    - MiniDumpWithoutOptionalData = 0x00000400,
    - MiniDumpWithFullMemoryInfo = 0x00000800,
    - MiniDumpWithThreadInfo = 0x00001000,
    - MiniDumpWithCodeSegs = 0x00002000

    +

    MiniDumpNormal = 0x00000000,
    + MiniDumpWithDataSegs = 0x00000001,
    + MiniDumpWithFullMemory = 0x00000002,
    + MiniDumpWithHandleData = 0x00000004,
    + MiniDumpFilterMemory = 0x00000008,
    + MiniDumpScanMemory = 0x00000010,
    + MiniDumpWithUnloadedModules = 0x00000020,
    + MiniDumpWithIndirectlyReferencedMemory = + 0x00000040,
    + MiniDumpFilterModulePaths = 0x00000080,
    + MiniDumpWithProcessThreadData = 0x00000100,
    + MiniDumpWithPrivateReadWriteMemory = 0x00000200,
    + MiniDumpWithoutOptionalData = 0x00000400,
    + MiniDumpWithFullMemoryInfo = 0x00000800,
    + MiniDumpWithThreadInfo = 0x00001000,
    + MiniDumpWithCodeSegs = 0x00002000

    -
    Value: StoreAnsiFilenames
    +
    Value: StoreAnsiFilenames

    Type: REG_DWORD
    Default: 0x0

    -

    This value can be used to force the AFS Client Service to - store filenames using the Windows system's ANSI character set instead of the - OEM Code Page character set which has traditionally been used by SMB file +

    This value can be used to force the AFS Client Service + to store filenames using the Windows system's ANSI character set instead of + the OEM Code Page character set which has traditionally been used by SMB file systems. 

    Note: The use of ANSI characters will render access to - files with 8-bit OEM file names unaccessible from Windows.  This option - is of use primarily when you wish to allow file names produced on Windows to - be accessible from Latin-1 UNIX systems and vice versa.

    + files with 8-bit OEM file names unaccessible from + Windows.  This option is of use primarily when you wish to allow file + names produced on Windows to be accessible from Latin-1 UNIX systems and vice + versa.

    -

    Regkey:
    -[HKLM\SOFTWARE\OpenAFS\Client\CSCPolicy]

    +class=SpellE>Regkey:
    +[HKLM\SOFTWARE\OpenAFS\Client\CSCPolicy]
    @@ -4935,10 +5188,11 @@ style='mso-bookmark:_Toc115416245'>Regkey:
    height:112.0pt'>
    -
    Value: "smb/cifs share name"
    +
    Value: "smb/cifs + share name"

    Type: REG_SZ
    Default: <none>

    This key is used to map SMB/CIFS shares to Client Side @@ -4950,10 +5204,11 @@ style='mso-bookmark:_Toc115416245'>Regkey:

    -

    Regkey:
    +name="_Regkey:_[HKLM\SOFTWARE\OpenAFS\Clie">Regkey:
    [HKLM\SOFTWARE\OpenAFS\Client\Freelance]

    Regkey:
    height:138.5pt'>
    -
    Value: "numeric value"

    Type: REG_SZ
    Default: <none>

    This key is used to store dot terminated mount point - strings for use in constructing the fake root.afs volume when Freelance (dynamic - roots) mode is activated.

    -

    "athena.mit.edu#athena.mit.edu:root.cell."

    -

    ".athena.mit.edu%athena.mit.edu:root.cell."

    + strings for use in constructing the fake root.afs + volume when Freelance (dynamic roots) mode is activated.

    +

    "athena.mit.edu#athena.mit.edu:root.cell."

    +

    ".athena.mit.edu%athena.mit.edu:root.cell."

    These values used to be stored in afs_freelance.ini

    -

    Regkey:
    +name="_Regkey:_[HKLM\SOFTWARE\OpenAFS\Clie_1">Regkey:
    [HKLM\SOFTWARE\OpenAFS\Client\Freelance\Symlinks]

    Regkey:
    height:145.0pt'>
    -
    Value: "numeric value"

    Type: REG_SZ
    Default: <none>

    -

    This key is used to store a dot terminated symlink - strings for use in constructing the fake root.afs volume when Freelance - (dynamic roots) mode is activated.

    -

    "linkname:destination-path."

    +

    This key is used to store a dot terminated symlink strings for use in constructing the fake root.afs volume when Freelance (dynamic roots) mode is + activated.

    +

    "linkname:destination-path."

    "athena:athena.mit.edu."

    -

    "home:athena.mit.edu\user\j\a\jaltman."

    -

    "filename:path\file."

    +

    "home:athena.mit.edu\user\j\a\jaltman."

    +

    "filename:path\file."

    -

    Regkey:
    -[HKLM\SOFTWARE\OpenAFS\Client\Submounts]

    +class=SpellE>Regkey:
    +[HKLM\SOFTWARE\OpenAFS\Client\Submounts]
    @@ -5019,29 +5278,33 @@ style='mso-bookmark:_Toc115416251'>Regkey:
    height:171.75pt'>
    -
    Value: "submount name"
    +
    Value: "submount + name"

    Type: REG_EXPAND_SZ
    Default: <none>

    -

    This key is used to store mappings of UNIX style AFS paths - to submount names which can be referenced as UNC paths.  For example the - submount string “/athena.mit.edu/user/j/a/jaltman" can be associated - with the submount name "jaltman.home".  This can then be - referenced as the UNC path \\AFS\jaltman.home.

    +

    This key is used to store mappings of UNIX style AFS + paths to submount names which can be referenced as + UNC paths.  For example the submount string “/athena.mit.edu/user/j/a/jaltman" can be associated + with the submount name "jaltman.home".  + This can then be referenced as the UNC path \\AFS\jaltman.home.

    These values used to be stored in afsdsbmt.ini

    -

    NOTE: Submounts should no longer be used with OpenAFS. - Use the Windows Explorer to create drive mappings to AFS UNC paths instead of - using the AFS Submount mechanism.

    +

    NOTE: Submounts should no + longer be used with OpenAFS. Use the Windows Explorer to create drive + mappings to AFS UNC paths instead of using the AFS Submount + mechanism.

    -

    Regkey:
    +name="_Regkey:_[HKLM\SOFTWARE\OpenAFS\Clie_2">Regkey:
    [HKLM\SOFTWARE\OpenAFS\Client\Server Preferences\VLDB]

    Regkey:
    height:105.5pt'>
    -
    Value: "hostname or ip address"
    +
    Value: "hostname or ip address"

    Type: REG_DWORD
    Default: <none>

    This key is used to specify a default set of VLDB server @@ -5065,10 +5329,12 @@ _Toc154229524'>Regkey:

    -

    Regkey:
    +class=SpellE>Regkey
    :
    [HKLM\SOFTWARE\OpenAFS\Client\Server Preferences\File]

    Regkey:
    height:105.5pt'>
    -
    Value: "hostname or ip address"
    +
    Value: "hostname or ip address"

    Type: REG_DWORD
    Default: <none>

    This key is used to specify a default set of File server @@ -5092,18 +5359,20 @@ style='mso-bookmark:_Toc115416255'>Regkey:

    -

    A.2. Integrated Logon Network provider parameters

    Affects the network provider (afslogon.dll).

    -

    Regkey: +class=SpellE>Regkey: [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters]

    Regkey: height:65.75pt'>
    -
    Value: FailLoginsSilently
    +
    Value: FailLoginsSilently

    Type: DWORD
    Default: 0

    Do not display message boxes if the login fails.

    @@ -5123,10 +5392,12 @@ style='mso-bookmark:_Toc115416258'>Regkey:
    -

    Regkey:
    +class=SpellE>Regkey
    :
    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider]

    Regkey:
    -
    Value: NoWarnings
    +
    Value: NoWarnings

    Type: DWORD
    Default: 0

    Disables visible warnings during logon.

    @@ -5146,22 +5417,22 @@ style='mso-bookmark:_Toc115416260'>Regkey:
    -
    Value: AuthentProviderPath
    +
    Value: AuthentProviderPath

    Type: REG_SZ
    NSIS: %WINDIR%\SYSTEM32\afslogon.dll

    Specifies the install location of the authentication - provider dll.

    + provider dll.

    -
    Value: Class

    Type: DWORD
    NSIS: 0x02

    @@ -5171,10 +5442,10 @@ style='mso-bookmark:_Toc115416260'>Regkey:
    -
    Value: DependOnGroup
    +
    Value: DependOnGroup

    Type: REG_MULTI_SZ
    NSIS: PNP_TDI

    Specifies the service groups upon which the AFS Client @@ -5186,36 +5457,36 @@ style='mso-bookmark:_Toc115416260'>Regkey:

    -
    Value: DependOnService
    +
    Value: DependOnService

    Type: REG_MULTI_SZ
    - NSIS: Tcpip NETBIOS RpcSs

    + NSIS: Tcpip NETBIOS RpcSs

    Specifies a list of services upon which the AFS Client - Service depends.  Windows should not attempt to start the AFS Client Service - until all of the specified services have successfully started.

    + Service depends.  Windows should not attempt to start the AFS Client + Service until all of the specified services have successfully started.

    -
    Value: Name

    Type: REG_SZ
    - NSIS: "OpenAFSDaemon"

    + NSIS: "OpenAFSDaemon"

    Specifies the display name of the AFS Client Service

    -
    Value: ProviderPath
    +
    Value: ProviderPath

    Type: REG_SZ
    NSIS: %WINDIR%\SYSTEM32\afslogon.dll

    Specifies the DLL to use for the network provider

    @@ -5223,54 +5494,54 @@ style='mso-bookmark:_Toc115416260'>Regkey:
    -

    A.2.1 +style='mso-bookmark:_Toc170269004'>A.2.1 Domain specific configuration keys for the Network Provider

    The network provider can be configured to have different -behavior depending on the domain that the user logs into.  These settings are -only relevant when using integrated login.  A domain refers to an Active -Directory (AD) domain, a trusted Kerberos (non-AD) realm or the local machine -(i.e. local account logins).  The domain name that is used for selecting -the domain would be the domain that is passed into the NPLogonNotify function -of the network provider.

    +behavior depending on the domain that the user logs into.  These settings +are only relevant when using integrated login.  A domain refers to an +Active Directory (AD) domain, a trusted Kerberos (non-AD) realm or the local +machine (i.e. local account logins).  The domain name that is used for +selecting the domain would be the domain that is passed into the NPLogonNotify function of the network provider.

    Domain specific registry keys are:

    -

    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider]

      (NP key)

    -

    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain]

      (Domains key)

    -

    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\"domain name"]

      (Specific domain key. One per domain.)

    -

    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\LOCALHOST]

    -

      (Localhost key)

    +

      (Localhost key)

    -

    Example:

     HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider

    @@ -5289,14 +5560,14 @@ style='mso-bookmark:_Toc115416273'>Example: values described in 2.1.1.  The effective values are chosen as described in 2.1.2.

    -

    A.2.1.1 Domain specific configuration values

    -

    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider]
    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain]
    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\"domain @@ -5308,13 +5579,15 @@ name"]
    -
    Value: LogonOptions
    +
    Value: LogonOptions

    Type: DWORD
    Default: 0x01

    -

    NSIS/WiX: depends on user configuration

    +

    NSIS/WiX: depends on user + configuration

    0x00 - Integrated Logon is not used
    0x01 - Integrated Logon is used
    0x02 - High Security Mode is used (deprecated)
    @@ -5323,20 +5596,20 @@ name"]
    creation of Drive Mappings.  This mode should not be used without Integrated Logon.

    As of 1.3.65 the SMB server supports SMB authentication.  - The High Security Mode should not be used when using SMB authentication - (SMBAuthType setting is non zero).

    + The High Security Mode should not be used when using SMB authentication (SMBAuthType setting is non zero).

    -
    Value: FailLoginsSilentl
    +
    Value: FailLoginsSilentl

    Type: DWORD (1|0)
    Default: 0
    - NSIS/WiX: (not set)

    + NSIS/WiX: (not set)

    If true, does not display any visible warnings in the event of an error during the integrated login process.

    @@ -5344,77 +5617,79 @@ name"]
    -
    Value: LogonScript
    +
    Value: LogonScript

    Type: REG_SZ or REG_EXPAND_SZ
    Default: (null)
    - NSIS/WiX: (only value under NP key) <install path>\afscreds.exe -:%s -x - -a -m -n -q

    + NSIS/WiX: (only value under NP key) <install + path>\afscreds.exe -:%s -x -a -m -n -q

    A logon script that will be scheduled to be run after the profile load is complete.  If using the REG_EXPAND_SZ type, you can - use any system environment variable as "%varname%" which would be - expanded at the time the network provider is run.  Optionally using a - "%s" in the value would result in it being expanded into the AFS - SMB username for the session.

    + use any system environment variable as "%varname%" + which would be expanded at the time the network provider is run.  + Optionally using a "%s" in the value would result in it being + expanded into the AFS SMB username for the session.

    -
    Value: LoginRetryInterval
    +
    Value: LoginRetryInterval

    Type: DWORD
    Default: 30
    - NSIS/WiX: (not set)

    + NSIS/WiX: (not set)

    If the OpenAFS client service has not started yet, the - network provider will wait for a maximum of "LoginRetryInterval" - seconds while retrying every "LoginSleepInterval" seconds to check - if the service is up.

    + network provider will wait for a maximum of "LoginRetryInterval" + seconds while retrying every "LoginSleepInterval" + seconds to check if the service is up.

    -
    Value: LoginSleepInterval
    +
    Value: LoginSleepInterval

    Type: DWORD
    Default: 5
    - NSIS/WiX: (not set)

    -

    See description of LoginRetryInterval.

    + NSIS/WiX: (not set)

    +

    See description of LoginRetryInterval.

    -
    Value: TheseCells
    +
    Value: TheseCells

    Type: REG_MULTI_SZ
    NSIS: <not set>

    -

    When Kerberos v5 is being used, TheseCells provides a - list of additional cells for which tokens should be obtained with the default - Kerberos v5 principal.

    +

    When Kerberos v5 is being used, TheseCells + provides a list of additional cells for which tokens should be obtained with + the default Kerberos v5 principal.

    -

    A.2.1.2 Selection of effective values for domain specific configuration

    During login to domain X, where X is the domain passed -into NPLogonNotify as lpAuthentInfo->LogonDomainName or the string -'LOCALHOST' if lpAuthentInfo->LogonDomainName equals the name of the -computer, the following keys will be looked up.

    +into NPLogonNotify as lpAuthentInfo->LogonDomainName or the string 'LOCALHOST' if lpAuthentInfo->LogonDomainName +equals the name of the computer, the following keys will be looked up.

    1.      @@ -5433,56 +5708,61 @@ domains key will be ignored.  All the configuration information in this case will come from the NP key.

    If the specific domain key exists, then for each of the -values metioned in (2), they will be looked up in the specific domain key, -domains key and the NP key successively until the value is found. The first -instance of the value found this way will be the effective for the login -session.  If no such instance can be found, the default will be -used.  To re-iterate, a value in a more specific key supercedes a value in -a less specific key.  The exceptions to this rule are stated below.

    - -

    metioned in (2), they will be looked up in the +specific domain key, domains key and the NP key successively until the value is +found. The first instance of the value found this way will be the effective for +the login session.  If no such instance can be found, the default will be +used.  To re-iterate, a value in a more specific key supercedes +a value in a less specific key.  The exceptions to this rule are stated +below.

    + +

    A.2.1.3 Exceptions to A.2.1.2

    To retain backwards compatibility, the following exceptions are made to 2.1.2.

    -

    2.1.3.1 'FailLoginsSilently'

    +style='mso-bookmark:_Toc170269020'>2.1.3.1 'FailLoginsSilently'

    -

    Historically, the 'FailLoginsSilently' value was in -HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters key and not -in the NP key.  Therefore, for backwards compatibility, the value in the -Parameters key will supercede all instances of this value in other keys.  -In the absence of this value in the Parameters key, normal scope rules apply.

    +

    Historically, the 'FailLoginsSilently' +value was in HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters +key and not in the NP key.  Therefore, for backwards compatibility, the +value in the Parameters key will supercede all +instances of this value in other keys.  In the absence of this value in +the Parameters key, normal scope rules apply.

    -

    2.1.3.2 'LogonScript'

    - -

    If a 'LogonScript' is not specified in the specific domain -key nor in the domains key, the value in the NP key will only be checked if the -effective 'LogonOptions' specify a high security integrated login.  If a -logon script is specified in the specific domain key or the domains key, it -will be used regardless of the high security setting.  Please be aware of -this when setting this value.

    +style='mso-bookmark:_Toc170269021'>2.1.3.2 'LogonScript' + +

    If a 'LogonScript' is not +specified in the specific domain key nor in the domains key, the value in the +NP key will only be checked if the effective 'LogonOptions' +specify a high security integrated login.  If a logon script is specified +in the specific domain key or the domains key, it will be used regardless of +the high security setting.  Please be aware of this when setting this +value.

    -

    A.3. AFS Credentials System Tray Tool parameters

    Affects the behavior of afscreds.exe

    -

    Regkey:
    +class=SpellE>Regkey
    :
    [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters]

    Regkey:
    -
    Value: Gateway

    Type: REG_SZ
    Default: ""
    - Function: GetGatewayName()

    -

    If the AFS client is utilizing a gateway to obtain AFS access, - the name of the gateway is specified by this value.

    + Function: GetGatewayName()

    +

    If the AFS client is utilizing a gateway to obtain AFS + access, the name of the gateway is specified by this value.

    -
    Value: Cell

    Type: REG_SZ
    Default: <none>
    - Variable: IsServiceConfigured()

    + Variable: IsServiceConfigured()

    The value Cell is used to determine if the AFS Client Service has been properly configured or not.

    -

    Regkey:
    +class=SpellE>Regkey
    :
    [HKLM\SOFTWARE\OpenAFS\Client]
    [HKCU\SOFTWARE\OpenAFS\Client]

    @@ -5529,18 +5811,18 @@ style='mso-bookmark:_Toc115416290'>Regkey:
    -
    Value: ShowTrayIcon
    +
    Value: ShowTrayIcon

    Type: DWORD {0, 1}
    Default: 1
    - Function: InitApp(), Main_OnCheckTerminate()

    + Function: InitApp(), Main_OnCheckTerminate()

    This value is used to determine whether or not a shortcut should be maintained in the user's Start Menu->Programs->Startup folder.

    -

    This value used to be stored at - [HKLM\Software\TransarcCorporation\AFS Client\AfsCreds].

    +

    This value used to be stored at [HKLM\Software\TransarcCorporation\AFS Client\AfsCreds].

    The current user value is checked first; if it does not exist the local machine value is checked.

    @@ -5548,14 +5830,14 @@ style='mso-bookmark:_Toc115416290'>Regkey:
    -
    Value: EnableKFW
    +
    Value: EnableKFW

    Type: DWORD {0, 1}
    Default: 1
    - Function: KFW_is_available()

    + Function: KFW_is_available()

    When MIT Kerberos for Windows can be loaded, Kerberos v5 will be used to obtain AFS credentials.  By setting this value to 0, the internal Kerberos v4 implementation will be used instead.  The current @@ -5566,10 +5848,10 @@ style='mso-bookmark:_Toc115416290'>Regkey:
    -

    Value: Use524

    Type: DWORD {0, 1}
    Default: 0
    @@ -5584,13 +5866,14 @@ style='mso-bookmark:_Toc115416290'>Regkey:
    -

    Value: AfscredsShortcutParams
    +
    Value: AfscredsShortcutParams

    Type: REG_SZ
    Default: "-A -M -N -Q"
    - Function: Shortcut_FixStartup

    + Function: Shortcut_FixStartup

    This value specifies the command line options which should be set as part of the shortcut to afscreds.exe.  afscreds.exe rewrites the shortcut each time it exits so as to ensure that the shortcut @@ -5600,21 +5883,23 @@ style='mso-bookmark:_Toc115416290'>Regkey:
    value is checked.

    The following subset of the command line options is appropriate for use in this registry setting:

    -

    -A = autoinit
    +

    -A = autoinit
    -M = renew drive maps
    - -N = ip address change detection
    - -Q = quiet mode.  do not display start service dialog if afsd_service is - not already running
    + -N = ip address change detection
    + -Q = quiet mode.  do not display start service dialog if afsd_service is not already running
    -S = show tokens dialog on startup
    - -Z = unmap drives

    + -Z = unmap drives

    -

    Regkey:
    +class=SpellE>Regkey
    :
    [HKCU\SOFTWARE\OpenAFS\Client]

    Regkey:
    height:92.0pt'>
    -
    Value: Authentication Cell

    Type: REG_SZ
    Default: <none>
    - Function: Afscreds.exe GetDefaultCell()

    + Function: Afscreds.exe GetDefaultCell()

    This value allows the user to configure a different cell name to be used as the default cell when acquiring tokens in afscreds.exe.

    -

    Regkey:
    +class=SpellE>Regkey
    :
    [HKCU\SOFTWARE\OpenAFS\Client\Reminders]

    Regkey:
    height:124.75pt'>
    -
    Value: "afs cell name"
    +
    Value: "afs + cell name"

    Type: DWORD {0, 1}
    Default: <none>
    - Function: LoadRemind(), SaveRemind()

    + Function: LoadRemind(), SaveRemind()

    These values are used to save and restore the state of the reminder flag for each cell for which the user has obtained tokens.

    -

    This value used to be stored at - [HKLM\Software\TransarcCorporation\AFS Client\AfsCreds].

    +

    This value used to be stored at [HKLM\Software\TransarcCorporation\AFS Client\AfsCreds].

    -

    Regkey:
    +class=SpellE>Regkey
    :
    [HKCU\SOFTWARE\OpenAFS\Client\Active Maps]

    Regkey:
    height:98.5pt'>
    -
    Value: "upper case drive letter"

    Type: DWORD {0, 1}
    Default: <none>

    @@ -5688,10 +5978,12 @@ style='mso-bookmark:_Toc115416299'>Regkey:
    -

    Regkey:
    +class=SpellE>Regkey
    :
    [HKCU\SOFTWARE\OpenAFS\Client\Mappings]

    Regkey:
    height:98.5pt'>
    -
    Value: "upper case drive letter"

    Type: REG_SZ
    Default: <none>

    @@ -5713,21 +6005,21 @@ style='mso-bookmark:_Toc115416301'>Regkey:
    -

    A.4 OpenAFS Client Service Environment -Variables

    +lang=FR style='mso-ansi-language:FR'>A.4 OpenAFS Client Service Environment Variables diff --git a/src/WINNT/doc/install/Documentation/en_US/html/ReleaseNotes/toc.htm b/src/WINNT/doc/install/Documentation/en_US/html/ReleaseNotes/toc.htm index 150ab0ca5..ce9c524f8 100644 --- a/src/WINNT/doc/install/Documentation/en_US/html/ReleaseNotes/toc.htm +++ b/src/WINNT/doc/install/Documentation/en_US/html/ReleaseNotes/toc.htm @@ -10,26 +10,28 @@ xmlns="http://www.w3.org/TR/REC-html40"> -OpenAFS for Windows 1.5.20 Table of Contents +OpenAFS for Windows 1.5.21 Table of Contents 

    diff --git a/src/WINNT/doc/install/Documentation/en_US/html/index.htm b/src/WINNT/doc/install/Documentation/en_US/html/index.htm index bd174bb35..e8d7bd515 100755 --- a/src/WINNT/doc/install/Documentation/en_US/html/index.htm +++ b/src/WINNT/doc/install/Documentation/en_US/html/index.htm @@ -1,213 +1,71 @@ - + - -OpenAFS for Windows Documentation - - - - - + + + + - +
    -

    +

    + + +

    OpenAFS for Windows

    -

    Version 1.5.20

    +

    Version 1.5.21

    -

     

    +

     

    Welcome to the OpenAFS for Windows online documentation set!

    The documentation set includes the OpenAFS for Windows Release Notes and the IBM AFS for Windows 3.6 product notes and installation and configuration -information for the AFS Server, AFS - Control Center, +information for the AFS Server, AFS Control Center, AFS Client, and AFS Light products. The OpenAFS for Windows online documentation set also includes the following administrative documentation: the IBM AFS Administration Reference and the IBM AFS Administration Guide. @@ -218,45 +76,40 @@ revised documentation to replace it at the current time.

    Online Documentation:

    -

    ·         -OpenAFS for Windows 1.5.11 +

    +·         +OpenAFS for Windows 1.5.21 Release Notes

    -

    ·         -IBM AFS for +

    +·         +IBM AFS for Windows 3.6 Quick Beginnings

    -

    ·         -IBM AFS for +

    +·         +IBM AFS for Windows 3.6 Release Notes

    -

    ·         -IBM AFS 3.6 Administration +

    +·         +IBM AFS 3.6 Administration Guide

    -

    ·         -IBM AFS 3.6 Administration +

    +·         +IBM AFS 3.6 Administration Reference

    -

     
    -
    -

    +

     
    +
    +

    -
    Variable: AFS_RPC_ENCRYPT

    Values:   "OFF" disables the use of RPC encryption any other value allows RPC encryption to be used
    @@ -5736,16 +6028,16 @@ FR'>

    -
    Variable: AFS_RPC_PROTSEQ

    Values:            - "ncalrpc"  - local RPC
    + "ncalrpc"  - local RPC
                            - "ncacn_np" - named pipes
    + "ncacn_np" - named pipes
                            - "ncacn_ip_tcp" - tcp/ip
    + "ncacn_ip_tcp" - tcp/ip
    Default:  local RPC