1b8f2b896c63e3f97c513024faab1fbd1b36705b
[openafs.git] / doc / txt / winnotes / registry.txt
1 Registry keys and Environment Variables used in the Windows AFS Client
2 as of release 1.4.0000
3 ======================================================================
4
5 REGISTRY KEYS:
6
7 1. Service parameters
8 ---------------------
9
10 The service parameters primarily affect the behavior of the AFS client
11 service (afsd_service.exe).
12
13 Regkey:
14 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters]
15
16 Value   : LANadapter
17 Type    : DWORD
18 Default : -1
19 Variable: LANadapter
20
21   LAN adapter number to use.  This is the lana number of the LAN
22   adapter that the SMB server should bind to.  If unspecified or set
23   to -1, a LAN adapter with named 'AFS' or a loopback adapter will be
24   selected.  If neither are present, then all available adapters will
25   be bound to.  When binding to a non-loopback adapter, the NetBIOS
26   name '%hostname%-AFS' will be used (where %hostname% is the NetBIOS
27   name of the host truncated to 11 characters). Otherwise, the NetBIOS
28   name will be 'AFS'.
29
30 Value   : CacheSize
31 Type    : DWORD
32 Default : 98304 (CM_CONFIGDEFAULT_CACHESIZE)
33 Variable: cm_initParams.cacheSize
34
35   Size of the AFS cache in 1k blocks.
36
37 Value   : ChunkSize
38 Type    : DWORD
39 Default : 17 (CM_CONFIGDEFAULT_CHUNKSIZE)
40 Variable: cm_logChunkSize (cm_chunkSize = 1 << cm_logChunkSize)
41
42   Size of chunk for reading and writing. Actual chunk size is 2^cm_logChunkSize.
43
44 Value   : Daemons
45 Type    : DWORD
46 Default : 2 (CM_CONFIGDEFAULT_DAEMONS)
47 Variable: numBkgD
48
49   Number of background daemons (number of threads of
50   cm_BkgDaemon). (see cm_BkgDaemon in cm_daemon.c)
51
52 Value   : ServerThreads
53 Type    : DWORD
54 Default : 25 (CM_CONFIGDEFAULT_SVTHREADS)
55 Variable: numSvThreads
56
57   Number of SMB server threads (number of threads of smb_Server). (see
58   smb_Server in smb.c).
59
60 Value   : Stats
61 Type    : DWORD
62 Default : 10000 (CM_CONFIGDEFAULT_STATS)
63 Variable: cm_initParams.nStatCaches
64
65   Cache configuration.
66
67 Value   : LogoffPreserveTokens
68 Type    : DWORD {1,0}
69 Default : 0
70
71   If enabled (set to 1), the Logoff Event handler will not attempt
72   to delete the user's tokens if the user's profile is stored outside
73   of AFS.
74
75 Value   : RootVolume
76 Type    : REG_SZ
77 Default : "root.afs"
78 Variable: cm_rootVolumeName
79
80   Root volume name.
81
82 Value   : Mountroot
83 Type    : REG_SZ
84 Default : "/afs"
85 Variable: cm_mountRoot
86
87   Name of root mount point.  In symlinks, if a path starts with
88   cm_mountRoot, it is assumed that the path is absolute (as opposed to
89   relative) and is adjusted accordingly. Eg: if a path is specified as
90   /afs/athena.mit.edu/foo/bar/baz and cm_mountRoot is "/afs", then the
91   path is interpreted as \\afs\all\athena.mit.edu\foo\bar\baz.  If a
92   path does not start with with cm_mountRoot, the path is assumed to
93   be relative and suffixed to the reference directory (i.e. directory
94   where the symlink exists)
95  
96
97 Value   : CachePath
98 Type    : REG_SZ or REG_EXPAND_SZ
99 Default : "%TEMP%\AFSCache"
100 Variable: cm_CachePath
101
102   Location of on-disk cache file.  The default is the SYSTEM account's
103   TEMP directory.  The attributes assigned to the file are HIDDEN and
104   SYSTEM.
105
106
107 Value   : NonPersistentCaching
108 Type    : DWORD [0..1]
109 Default : 0
110 Variable: buf_CacheType
111
112   When this registry value is set to a non-zero value, the CachePath
113   value is ignored and the cache data is stored in the windows paging
114   file.  This prevents the use of persistent caching (when available)
115   as well as the ability to alter the size of the cache at runtime
116   using the "fs setcachesize" command.
117
118
119 Value   : ValidateCache
120 Type    : DWORD [0..2]
121 Default : 1
122 Variable: buf_CacheType
123
124   This value determines if and when persistent cache validation is 
125   performed.
126     0 - Validation is disabled
127     1 - Validation is performed at startup
128     2 - Validation is performed at shutdown
129
130
131 Value   : TrapOnPanic
132 Type    : DWORD {1,0}
133 Default : 0
134 Variable: traceOnPanic
135
136   Issues a breakpoint in the event of a panic. (breakpoint: _asm int 3).
137
138 Value   : NetbiosName
139 Type    : REG_EXPAND_SZ
140 Default : "AFS"
141 Variable: cm_NetbiosName
142
143   Specifies the NetBIOS name to be used when binding to a Loopback
144   adapter.  To provide the old behavior specify a value of 
145   "%COMPUTERNAME%-AFS"
146
147 Value   : IsGateway
148 Type    : DWORD {1,0}
149 Default : 0
150 Variable: isGateway
151
152   Select whether or not this AFS client should act as a gateway.  If
153   set and the NetBIOS name hostname-AFS is bound to a physical NIC,
154   other machines in the subnet can access AFS via SMB connections to
155   hostname-AFS.
156
157   When IsGateway is non-zero, the LAN adapter detection code will
158   avoid binding to a loopback adapter.  This will ensure that the
159   NetBIOS name will be of the form hostname-AFS instead of the value
160   set by the "NetbiosName" registry value.
161
162 Value   : ReportSessionStartups
163 Type    : DWORD {1,0}
164 Default : 0
165 Variable: reportSessionStartups
166
167   If enabled, all SMB sessions created are recorded in the Application
168   event log.  This also enables other events such as drive mappings
169   or various error types to be logged.
170
171 Value   : TraceBufferSize
172 Type    : DWORD
173 Default : 5000 (CM_CONFIGDEFAULT_TRACEBUFSIZE)
174 Variable: traceBufSize
175
176   Number of entries to keep in trace log.
177
178 Value   : SysName
179 Type    : REG_SZ
180 Default : "i386_nt40"
181 Variable: cm_sysName
182
183   Provides an initial value for "fs sysname".  The string can contain
184   one or more replacement values for @sys in order of preference separated 
185   by whitespace.
186
187 Value   : SecurityLevel
188 Type    : DWORD {1,0}
189 Default : 0
190 Variable: cryptall
191
192   Enables encryption on RX calls.
193
194 Value   : UseDNS
195 Type    : DWORD {1,0}
196 Default : 1
197 Variable: cm_dnsEnabled
198
199   Enables resolving volservers using AFSDB DNS queries. (see
200   afsdb-freelance-notes).
201
202   As of 1.3.60, this value is ignored as the DNS query support
203   utilizes the Win32 DNSQuery API which is available on Win2000
204   and above.
205
206 Value   : FreelanceClient
207 Type    : DWORD {1,0}
208 Default : 0
209 Variable: cm_freelanceEnabled
210
211   Enables freelance client. (see afsdb-freelance-notes)
212
213 Value   : HideDotFiles
214 Type    : DWORD {1,0}
215 Default : 1
216 Variable: smb_hideDotFiles
217
218   Enables marking dotfiles with the hidden attribute.  Dot files are
219   files whose name starts with a period (excluding "." and "..").
220
221 Value   : MaxMpxRequests
222 Type    : DWORD
223 Default : 50
224 Variable: smb_maxMpxRequests
225
226   Maximum number of multiplexed SMB requests that can be made.
227
228 Value   : MaxVCPerServer
229 Type    : DWORD
230 Default : 100
231 Variable: smb_maxVCPerServer
232
233   Maximum number of SMB virtual circuits.
234
235 Value   : Cell
236 Type    : REG_SZ
237 Default : <none>
238 Variable: rootCellName
239
240   Name of root cell (the cell from which root.afs should be mounted in
241   \\afs\all).
242
243 Value   : RxNoJumbo
244 Type    : DWORD {0,1}
245 Default : 0
246 Variable: rx_nojumbo
247
248   If enabled, does not send or indicate that we are able to send or
249   receive RX jumbograms.
250
251 Value   : RxMaxMTU
252 Type    : DWORD
253 Default : -1
254 Variable: rx_mtu
255
256   If set to anything other than -1, uses that value as the maximum MTU
257   supported by the RX interface.
258
259   In order to enable OpenAFS to operate across the Cisco IPSec VPN
260   client, this value must be set to 1264 or smaller.
261
262 Value   : ConnDeadTimeout
263 Type    : DWORD
264 Default : 60 (seconds)
265 Variable: ConnDeadtimeout
266
267   The Connection Dead Time is enforced to be at a minimum 15 seconds 
268   longer than the minimum SMB timeout as specified by 
269
270   HKLM\SYSTEM\CurrentControlSet\Services\lanmanworkstation\parameters
271     SessTimeout
272
273   If the minimum SMB timeout is not specified the value is 45 seconds.
274   See http://support.microsoft.com:80/support/kb/articles/Q102/0/67.asp
275
276
277 Value   : HardDeadTimeout
278 Type    : DWORD
279 Default : 120 (seconds)
280 Variable: HardDeadtimeout
281
282   The Hard Dead Time is enforced to be at least double the ConnDeadTimeout.
283   The provides an opportunity for at least one retry.
284
285
286 Value  : TraceOption
287 Type   : DWORD {0, 1, 2, 3}
288 Default : 0
289
290   Enables logging of debug output to the Windows Event Log.
291   Bit 0 enables logging of "Logon Events" processed by the Network Provider
292   and Winlogon Event Notification Handler.  
293   Bit 1 enables logging of events captured by the AFS Client Service.
294
295 Value   : AllSubmount
296 Type    : DWORD {0, 1}
297 Default : 1
298 Variable: allSubmount (smb.c)
299
300   By setting this value to 0, the "\\NetbiosName\all" mount point 
301   will not be created.  This allows the read-write versions of 
302   root.afs to be hidden.
303
304 Value   : NoFindLanaByName
305 Type    : DWORD {0, 1}
306 Default : 0
307
308   Disables the attempt to identity the network adapter to use by 
309   looking for an adapter with a display name of "AFS".
310
311 Value   : MaxCPUs
312 Type    : DWORD {1..32} or {1..64} depending on the architecture
313 Default : <no default>
314
315   If this value is specified, afsd_service.exe will restrict itself
316   to executing on the specified number of CPUs if there are a greater
317   number installed in the machine.  
318
319   NOTE: Setting this entry to "1" may be required on hyperthreaded 
320   systems to avoid crashes in the RX library.
321
322 Value   : smbAuthType
323 Type    : DWORD {0..2} 
324 Default : 2
325
326   If this value is specified, it defines the type of SMB authentication    
327   which must be present in order for the Windows SMB client to connect
328   to the AFS Client Service's SMB server.  The values are:
329     0 = No authentication required
330     1 = NTLM authentication required
331     2 = Extended (GSS SPNEGO) authentication required
332   The default is Extended authentication
333
334 Value   : MaxLogSize
335 Type    : DWORD {0 .. MAXDWORD}
336 Default : 100K
337
338   This entry determines the maximum size of the %WINDIR%\TEMP\afsd_init.log 
339   file.  If the file is larger than this value when afsd_service.exe starts
340   the file will be reset to 0 bytes.  If this value is 0, it means the file
341   should be allowed to grow indefinitely.
342
343 Value   : FlushOnHibernate
344 Type    : DWORD {0,1}
345 Default : 1
346
347   If set, flushes all volumes before the machine goes on hibernate or
348   stand-by.
349
350 Regkey:
351 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters\GlobalAutoMapper]
352
353 Value   : <Drive Letter:> for example "G:"
354 Type    : SZ
355
356     Specifies the submount name to be mapped by afsd_service.exe at startup
357     to the provided drive letter.
358
359
360 Regkey:
361 [HKLM\SOFTWARE\OpenAFS\Client]
362
363 Value   : CellServDBDir
364 Type    : REG_SZ
365 Default : <not defined>
366
367   Specifies the directory containing the CellServDB file.
368   When this value is not specified, the AFS Client install
369   directory is used.
370
371
372 Value   : VerifyServiceSignature
373 Type    : REG_DWORD
374 Default : 0x1
375
376   This value can be used to disable the runtime verification of 
377   the digital signatures applied to afsd_service.exe and the 
378   OpenAFS DLLs it loads.  This test is performed to verify that 
379   the DLLs which are loaded by afsd_service.exe are from the 
380   same distribution as afsd_service.exe.  This is to prevent
381   random errors caused when DLLs from one distribution of AFS
382   are loaded by another one.  This is not a security test.  The
383   reason for disabling this test is to free up additional memory
384   which can be used for a large cache size.
385
386
387 Value   : IoctlDebug
388 Type    : REG_DWORD
389 Default : 0x0
390
391   This value can be used to debug the cause of pioctl() failures.
392   Set a non-zero value and the pioctl() library will output status
393   information to stdout.  Executing command line tools such as
394   tokens.exe, fs.exe, etc can then be used to determine why the
395   pioctl() call is failing. 
396
397
398 Value   : MiniDumpType
399 Type    : REG_DWORD
400 Default : 0x0 (MiniDumpNormal)
401
402   This value is used to specify the type of minidump generated by
403   afsd_service.exe either when the process crashes or when a user
404   initiated is dump file is generated with the "fs.exe minidump"
405   command.
406
407   Valid values are dependent on the version of DbgHelp.dll installed
408   on the machine.  See the Microsoft Developer Library for further
409   information.
410
411   MiniDumpNormal = 0x00000000,
412   MiniDumpWithDataSegs = 0x00000001,
413   MiniDumpWithFullMemory = 0x00000002,
414   MiniDumpWithHandleData = 0x00000004,
415   MiniDumpFilterMemory = 0x00000008,
416   MiniDumpScanMemory = 0x00000010,
417   MiniDumpWithUnloadedModules = 0x00000020,
418   MiniDumpWithIndirectlyReferencedMemory = 0x00000040,
419   MiniDumpFilterModulePaths = 0x00000080,
420   MiniDumpWithProcessThreadData = 0x00000100,
421   MiniDumpWithPrivateReadWriteMemory = 0x00000200,
422   MiniDumpWithoutOptionalData = 0x00000400,
423   MiniDumpWithFullMemoryInfo = 0x00000800,
424   MiniDumpWithThreadInfo = 0x00001000,
425   MiniDumpWithCodeSegs = 0x00002000
426
427
428 Value   : StoreAnsiFilenames
429 Type    : REG_DWORD
430 Default : 0x0
431
432   This value can be used to force the AFS Client Service to
433   store filenames using the Windows system's ANSI character set
434   instead of the OEM Code Page character set which has traditionally
435   been used by SMB file systems.  
436
437   Note: The use of ANSI characters will render access to files
438   with 8-bit OEM file names unaccessible from Windows.  This option
439   is of use primarily when you wish to allow file names produced
440   on Windows to be accessible from Latin-1 Unix systems and vice
441   versa.
442
443
444 Regkey:
445 [HKLM\SOFTWARE\OpenAFS\Client\CSCPolicy]
446
447 Value   : "smb/cifs share name"
448 Type    : REG_SZ
449 Default : <none>
450
451     This key is used to map SMB/CIFS shares to Client Side Caching 
452     (off-line access) policies. For each share one of the following
453     policies may be used: "manual", "programs", "documents", "disable"
454
455     These values used to be stored in afsdsbmt.ini
456
457 Regkey:
458 [HKLM\SOFTWARE\OpenAFS\Client\Freelance]
459
460 Value   : "numeric value"
461 Type    : REG_SZ
462 Default : <none>
463
464     This key is used to store dot terminated mount point strings 
465     for use in constructing the fake root.afs volume when Freelance
466     (dynamic roots) mode is activated.
467
468         "athena.mit.edu#athena.mit.edu:root.cell."
469         ".athena.mit.edu%athena.mit.edu:root.cell."
470
471     These values used to be stored in afs_freelance.ini
472
473
474 Regkey:
475 [HKLM\SOFTWARE\OpenAFS\Client\Freelance\Symlinks]
476
477 Value   : "numeric value"
478 Type    : REG_SZ
479 Default : <none>
480
481     This key is used to store a dot terminated symlink strings 
482     for use in constructing the fake root.afs volume when Freelance
483     (dynamic roots) mode is activated.
484
485         "linkname:destination-path."
486         "athena:athena.mit.edu."
487         "home:athena.mit.edu\user\j\a\jaltman."
488         "filename:path\file."
489
490
491 Regkey:
492 [HKLM\SOFTWARE\OpenAFS\Client\Submounts]
493
494 Value   : "submount name"
495 Type    : REG_EXPAND_SZ
496 Default : <none>
497
498     This key is used to store mappings of unix style AFS paths
499     to submount names which can be referenced as UNC paths.
500     For example the submount string "/athena.mit.edu/user/j/a/jaltman"
501     can be associated with the submount name "jaltman.home".
502     This can then be referenced as the UNC path \\AFS\jaltman.home.
503
504     These values used to be stored in afsdsbmt.ini
505
506     NOTE: Submounts should no longer be used with OpenAFS.
507     Use the Windows Explorer to create drive mappings to AFS UNC
508     paths instead of using the AFS Submount mechanism.
509
510
511 Regkey:
512 [HKLM\SOFTWARE\OpenAFS\Client\Server Preferences\VLDB]
513
514 Value   : "hostname or ip address"
515 Type    : REG_DWORD
516 Default : <none>
517
518     This key is used to specify a default set of VLDB server preferences.
519     For each entry the value name will be either the IP address of a server
520     or a fully qualified domain name.  The value will be the ranking.  The
521     ranking will be adjusted by a random value between 0 and 256 prior to
522     the preference being set.
523
524
525 Regkey:
526 [HKLM\SOFTWARE\OpenAFS\Client\Server Preferences\File]
527
528 Value   : "hostname or ip address"
529 Type    : REG_DWORD
530 Default : <none>
531
532     This key is used to specify a default set of File server preferences.
533     For each entry the value name will be either the IP address of a server
534     or a fully qualified domain name.  The value will be the ranking.  The
535     ranking will be adjusted by a random value between 0 and 256 prior to
536     the preference being set.
537
538
539
540 2. Network provider parameters
541 ------------------------------
542 Affects the network provider (afslogon.dll).
543
544 Regkey:
545 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters]
546
547 Value   : FailLoginsSilently
548 Type    : DWORD
549 Default : 0
550
551   Do not display message boxes if the login fails.
552
553 Regkey:
554 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider]
555
556 Value   : NoWarnings
557 Type    : DWORD
558 Default : 0
559
560   Disables visible warnings during logon.
561
562 Value   : AuthentProviderPath
563 Type    : REG_SZ
564 NSIS    : %WINDIR%\SYSTEM32\afslogon.dll
565
566   Specifies the install location of the authentication provider dll.
567
568 Value   : Class
569 Type    : DWORD
570 NSIS    : 0x02
571
572   Specifies the class of network provider
573
574 Value   : DependOnGroup
575 Type    : REG_MULTI_SZ
576 NSIS    : PNP_TDI
577
578   Specifies the service groups upon which the AFS Client Service 
579   depends.  Windows should not attempt to start the AFS Client Service
580   until all of the services within these groups have successfully 
581   started.
582
583 Value   : DependOnService
584 Type    : REG_MULTI_SZ
585 NSIS    : Tcpip NETBIOS RpcSs
586
587   Specifies a list of services upon which the AFS Client Service 
588   depends.  Windows should not attempt to start the AFS Client Service
589   until all of the specified services have successfully started.
590   
591 Value   : Name
592 Type    : REG_SZ
593 NSIS    : "OpenAFSDaemon"
594
595   Specifies the display name of the AFS Client Service
596
597 Value   : ProviderPath
598 Type    : REG_SZ
599 NSIS    : %WINDIR%\SYSTEM32\afslogon.dll
600
601   Specifies the DLL to use for the network provider
602
603
604 2.1 Domain specific configuration keys for the Network Provider
605 ---------------------------------------------------------------
606
607 The network provider can be configured to have different behavior
608 depending on the domain that the user logs into.  These settings are
609 only relevant when using integrated login.  A domain refers to an
610 Active Directory (AD) domain, a trusted Kerberos (non-AD) realm or the
611 local machine (i.e. local account logins).  The domain name that is
612 used for selecting the domain would be the domain that is passed into
613 the NPLogonNotify function of the network provider.
614
615 Domain specific registry keys are :
616
617 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider]
618   (NP key)
619
620 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain]
621   (Domains key)
622
623 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\"domain name"]
624   (Specific domain key. One per domain.)
625
626 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\LOCALHOST]
627   (Localhost key)
628
629 eg:
630  HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider
631   |
632   +- Domain
633      +-AD1.EXAMPLE.COM
634      +-AD2.EXAMPLE.NET
635      +-LOCALHOST
636
637 Each of the domain specific keys can have the set of values described
638 in 2.1.1.  The effective values are chosen as described in 2.1.2.
639
640 2.1.1  Domain specific configuration values
641 -------------------------------------------
642 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider]
643 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain]
644 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\"domain name"]
645 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider\Domain\LOCALHOST]
646
647   Value   : LogonOptions
648   Type    : DWORD
649   Default : 0x01
650   NSIS/WiX: depends on user configuration
651
652   0x00 - Integrated Logon is not used
653   0x01 - Integrated Logon is used
654   0x02 - High Security Mode is used
655   0x03 - Integrated Logon with High Security Mode is used
656
657   High Security Mode generates random SMB names for the creation of
658   Drive Mappings.  This mode should not be used without Integrated Logon.
659
660   As of 1.3.65 the SMB server supports SMB authentication.  The High
661   Security Mode should not be used when using SMB authentication
662   (SMBAuthType setting is non zero).
663
664   Value   : FailLoginsSilently
665   Type    : DWORD (1|0)
666   Default : 0
667   NSIS/WiX: (not set)
668
669      If true, does not display any visible warnings in the event of an
670      error during the integrated login process.
671
672   Value   : LogonScript
673   Type    : REG_SZ or REG_EXPAND_SZ
674   Default : (null)
675   NSIS/WiX: (only value under NP key) <install path>\afscreds.exe -:%s -x -a -m -n -q
676
677      A logon script that will be scheduled to be run after the profile
678      load is complete.  If using the REG_EXPAND_SZ type, you can use
679      any system environment variable as "%varname%" which would be
680      expanded at the time the network provider is run.  Optionally
681      using a "%s" in the value would result in it being expanded into
682      the AFS SMB username for the session.
683
684   Value   : LoginRetryInterval
685   Type    : DWORD
686   Default : 30
687   NSIS/WiX: (not set)
688
689      If the OpenAFS client service has not started yet, the network
690      provider will wait for a maximum of "LoginRetryInterval" seconds
691      while retrying every "LoginSleepInterval" seconds to check if the
692      service is up.
693
694   Value   : LoginSleepInterval
695   Type    : DWORD
696   Default : 5
697   NSIS/WiX: (not set)
698
699      See description of LoginRetryInterval.
700
701   Value   : TheseCells
702   Type    : REG_MULTI_SZ
703   NSIS    : <not set>
704
705     When Kerberos 5 is being used, TheseCells provides a list of additional
706     cells for which tokens should be obtained with the default Kerberos 5 
707     principal.
708
709
710 2.1.2  Selection of effective values for domain specific configuration
711 ----------------------------------------------------------------------
712
713   During login to domain X, where X is the domain passed into
714   NPLogonNotify as lpAuthentInfo->LogonDomainName or the string
715   'LOCALHOST' if lpAuthentInfo->LogonDomainName equals the name of the
716   computer, the following keys will be looked up.
717
718     1. NP key. ("HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider")
719     2. Domains key. (NP key\"Domain")
720     3. Specific domain key. (Domains key\X)
721
722   If the specific domain key does not exist, then the domains key will
723   be ignored.  All the configuration information in this case will
724   come from the NP key.
725
726   If the specific domain key exists, then for each of the values
727   metioned in (2), they will be looked up in the specific domain key,
728   domains key and the NP key successively until the value is found.
729   The first instance of the value found this way will be the effective
730   for the login session.  If no such instance can be found, the
731   default will be used.  To re-iterate, a value in a more specific key
732   supercedes a value in a less specific key.  The exceptions to this
733   rule are stated below.
734
735 2.1.3  Exceptions to 2.1.2
736 --------------------------
737
738   To retain backwards compatibility, the following exceptions are made
739   to 2.1.2.
740
741 2.1.3.1 'FailLoginsSilently'
742
743   Historically, the 'FailLoginsSilently' value was in
744   HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters
745   key and not in the NP key.  Therefore, for backwards compatibility,
746   the value in the Parameters key will supercede all instances of this
747   value in other keys.  In the absence of this value in the Parameters
748   key, normal scope rules apply.
749
750 2.1.3.2 'LogonScript'
751
752   If a 'LogonScript' is not specified in the specific domain key nor
753   in the domains key, the value in the NP key will only be checked if
754   the effective 'LogonOptions' specify a high security integrated
755   login.  If a logon script is specified in the specific domain key or
756   the domains key, it will be used regardless of the high security
757   setting.  Please be aware of this when setting this value.
758
759
760 3. AFS Credentials System Tray Tool parameters
761 ----------------------------------------------
762 Affects the behavior of afscreds.exe
763
764 Regkey:
765 [HKLM\SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters]
766
767 Value   : Gateway
768 Type    : REG_SZ
769 Default : ""
770 Function: GetGatewayName()
771
772   If the AFS client is utilizing a gateway to obtain AFS access, 
773   the name of the gateway is specified by this value.
774
775 Value   : Cell
776 Type    : REG_SZ
777 Default : <none>
778 Variable: IsServiceConfigured()
779
780   The value Cell is used to determine if the AFS Client Service has
781   been properly configured or not.
782
783
784 Regkey:
785 [HKLM\SOFTWARE\OpenAFS\Client]
786 [HKCU\SOFTWARE\OpenAFS\Client]
787
788 Value   : ShowTrayIcon
789 Type    : DWORD {0, 1}
790 Default : 1
791 Function: InitApp(), Main_OnCheckTerminate()
792
793   This value is used to determine whether or not a shortcut should be
794   maintained in the user's Start Menu->Programs->Startup folder. 
795
796   This value used to be stored at 
797   [HKLM\Software\TransarcCorporation\AFS Client\AfsCreds].
798
799   The current user value is checked first; if it does not exist the local 
800   machine value is checked.
801
802
803 Value   : EnableKFW
804 Type    : DWORD {0, 1}
805 Default : 1
806 Function: KFW_is_available()
807
808   When MIT Kerberos for Windows can be loaded, Kerberos 5 will be used
809   to obtain AFS credentials.  By setting this value to 0, the internal
810   Kerberos 4 implementation will be used instead.  The current user value 
811   is checked first; if it does not exist the local machine value is checked.
812
813 Value   : Use524
814 Type    : DWORD {0, 1}
815 Default : 0
816 Function: KFW_use_krb524()
817
818   When MIT Kerberos for Windows can be loaded, Kerberos 5 will be used
819   to obtain AFS credentials.  By setting this value to 1, the Kerberos 5
820   tickets will be converted to Kerberos 4 tokens via a call to the krb524
821   daemon.  The current user value is checked first; if it does not exist 
822   the local machine value is checked.
823
824 Value   : AfscredsShortcutParams
825 Type    : REG_SZ
826 Default : "-A -M -N -Q"
827 Function: Shortcut_FixStartup
828
829   This value specifies the command line options which should be set
830   as part of the shortcut to afscreds.exe.  afscreds.exe rewrites the 
831   shortcut each time it exits so as to ensure that the shortcut points
832   to the latest version of the program.  This value is used to determine
833   which values should be used for command line parameters.  The current
834   user value is checked first; if it does not exist the local machine
835   value is checked.
836
837   The following subset of the command line options are appropriate for
838   use in this registry setting:
839
840     -A = autoinit 
841     -M = renew drive maps 
842     -N = ip address change detection 
843     -Q = quiet mode.  do not display start service dialog
844          if afsd_service is not already running
845     -S = show tokens dialog on startup
846     -Z = unmap drives
847
848
849 Regkey:
850 [HKCU\SOFTWARE\OpenAFS\Client]
851
852 Value   : Authentication Cell
853 Type    : REG_SZ
854 Default : <none>
855 Function: Afscreds.exe GetDefaultCell()
856
857   This value allows the user to configure a different cell name to
858   be used as the default cell when acquiring tokens in afscreds.exe
859
860
861 Regkey:
862 [HKCU\SOFTWARE\OpenAFS\Client\Reminders]
863
864 Value   : "afs cell name"
865 Type    : DWORD {0, 1}
866 Default : <none>
867 Function: LoadRemind(), SaveRemind()
868
869   These values are used to save and restore the state of the reminder
870   flag for each cell for which the user has obtained tokens.
871
872   This value used to be stored at 
873   [HKLM\Software\TransarcCorporation\AFS Client\AfsCreds].
874
875
876 Regkey:
877 [HKCU\SOFTWARE\OpenAFS\Client\Active Maps]
878
879 Value   : "upper case drive letter"
880 Type    : DWORD {0, 1}
881 Default : <none>
882
883   These values are used to store the persistence state of the AFS 
884   drive mappings as listed in the [...\Client\Mappings] key
885
886   These values used to be stored in the afsdsbmt.ini file
887
888 Regkey:
889 [HKCU\SOFTWARE\OpenAFS\Client\Mappings]
890
891 Value   : "upper case drive letter"
892 Type    : REG_SZ
893 Default : <none>
894
895   These values are used to store the AFS path in Unix notation
896   to which the drive letter is to be mapped.
897
898   These values used to be stored in the afsdsbmt.ini file.
899
900
901 ENVIRONMENT VARIABLES:
902
903 Variable: AFS_RPC_ENCRYPT 
904 Values:   "OFF" disables the use of RPC encryption
905           any other value allows RPC encryption to be used
906 Default:  RPC encryption is on
907
908
909 Variable: AFS_RPC_PROTSEQ
910 Values:   "ncalrpc"  - local RPC 
911           "ncacn_np" - named pipes
912           "ncacn_ip_tcp" - tcp/ip
913 Default:  local RPC
914