e2eda93f25436d6e7ea1938795b77261102669b7
[openafs.git] / doc / txt / winnotes / afs-issues.txt
1 This file is a rough list of known issues with the 1.3.65 release of OpenAFS
2 on Windows.  This list is not complete.  There are probably other issues 
3 which can be found in the RT database or on the mailing list.
4
5
6 (1) File/Directory access is not integrated with windows security 
7
8 (2) tokens are assigned to the service on a system global basis.  Therefore, 
9 all users and processes on the machine are able to access files with the 
10 list of available tokens.  This is dangerous if anonymous logins are enabled;
11 or if multiple users are on the machine (ie, Terminal Server or XP user 
12 switching)
13
14 (3) SMB LANA list is static.  
15
16 (3a) IP address changes cause the service to terminate due to an assertion 
17 in smb_Listener() thread.
18
19 (3b) New IP addresses do not get bound
20
21 (3c) Loopback adapter hack:
22   (i)   prevents use of AFS Gateway 
23   (ii)  requires installation of loopback adapter
24   (iii) the list of hack adapters is incomplete (VMWare, MS TV/Video, ...)
25   (iv)  incompatible with Windows 2000 and earlier
26
27 (4) Performance of the AFS Client Service code simply sucks.  The average 
28 read, write, and delete times for AFS are more than ten times slower than 
29 the equivalent Windows File Share operations.  The Window File Share operations 
30 are not all that fast.  It has been claimed that the Windows AFS functions are
31 one hundred times slower than the equivalent operations on Linux.  I would not 
32 be at all surprised.  The best we can do without rewriting AFS as a IFS would
33 be to match the Windows File Share performance.  I believe the threading model
34 is imposing significant delays in the movement of data from between the SMB 
35 and RX protocol operations. There was also an issue with large numbers of 
36 page faults which have since been fixed.
37
38 (7) There appear to be directory locking problems associated with renaming 
39 directories.
40
41 (8) File termination differences between Win9x and nt/w2k/xp (Jim Peterson)
42
43 (9) How to silence "Explorer" when the mapped drive is not available?
44
45 (10) Convert to IFS!!!!!!
46
47 (11) Kerberos 5 integration:
48 (11f) allow arbitrary cell to realm mappings
49 (11g) modify UI to allow user to choose whether to authenticate
50       using Kerberos or AFS 
51 (11h) modify UI to allow user to select an existing principal to
52       be used to request AFS tokens
53 (11i) modify UI to display Kerberos 5 ticket info (principal, 
54       ticket lifetimes, etc) 
55
56 (12) Default cell is system global just like everything else.  Different
57      users logging in via Integrated Logon or using afscreds.exe cannot
58      be automatically prompted for different cells
59
60 (13) AFS Integrated Logon:
61 (13b) If using Kerberos, need to figure out a means of passing credentials
62       into the user space until such time as I finish the new credential
63       cache service.
64 (13c) If network is not available must store the username and password 
65       somewhere until such time as the network starts.
66
67 (14) Loopback adapter is not always installed with bindings to "File and 
68      Printer Sharing for Microsoft Networks" or "Client for Microsoft 
69      Networks".   If these are not bound then SMB names will successfully
70      be published to a list of zero which causes the AFS not to function.
71      We need a way to test whether the Loopback adapter is properly bound
72      so we know if it is safe to use.  Actually, it is worse.  Even with
73      the bindings on Win2000 the loopback adapter frequently fails to publish
74      SMB names.  Of course, the error messages report nothing.
75
76 (15) If a drive mapping is "in use", then afscreds cannot be used to Modify
77      or Delete the Mapping.  If a map to "H:" to \afs\cell\foo" with 
78      description "home" is modified to point to \afs\cell\bar, then the 
79      description must be unique.  "home" cannot be reused.  We need a way 
80      to remove "home" from the submount list.  
81
82 (16) WinAFS configuration values are still stored in old style INI files 
83      instead of using the Registry.  This is especially important for
84      per-user values such as drive mappings
85
86 (17) Drive mappings are lost on WinXP after return from Standby.  (This could
87      be because the AFS Client Service fails OR because the RX protocol is
88      temporarily unable to access the Cell due to network restore timing
89      issues.)
90
91 (18) No support for Unicode filenames.  Translations make file unreadable
92
93 (19) No auto-restart on service failure
94
95 (20) Better EventLog handling
96
97 (21) Named Pipes Support
98
99 (22) Memory Mapped File support
100
101 (23) Large file support
102
103 (26) Implement persistent disk based cache which survives restarts
104
105 (27) NSIS Installer issues
106      (a) integration with KFW install script
107      (b) Optional removal of AFS Server volumes
108
109 (28) The User Interface needs to be re-designed to separate the per-user
110      and per-machine settings.  All of the new registry items need to 
111      be added to the UI
112
113 (29) Windows XP SP2 and Windows 2003 SP1 are going to lockdown the 
114      machine.  We need to add code to programatically open the 
115      Internet Connection Firewall to the ports needed by the various
116      AFS services.
117
118 (30) There appears to be a thread safety issue in the Rx library when
119      running on Intel processors which support hyper-threading
120
121 (32) Thread initialization versus Global Drive Mapping.  There is no
122      mechanism in the afsd_init.c to ensure that all of the threads 
123      complete initializing in the correct sequence.  In the case of 
124      Global Drive Maps this is a problem because the Global Drive Maps
125      can be executed prior to the completion of the SMB registration
126      and service thread initialization.
127
128 (35) Should we allow the AFSCACHE file to be stored in the Virtual Paging
129      file as long as we do not support persistent caches?
130
131
132 -------------------------------------------------------------------------
133 List sent to SLAC:
134
135    1. Convert from use of .INI files to appropriate places in the registry
136    2. No longer use AFS Client Service "cell" as the default cell for individual users
137    3. Re-write afsd_service.exe to perform synchronized thread startup and shutdown.  Currently there is no synchronization of thread creation which results in timing conflicts; and there is no attempt to cleanly shutdown the service which causes problems when restarting and prevents the implementation of a persistent cache
138    4. Implement a persistent cache
139    5. Prevent panic situation when the root.afs volume is not reachable
140    6. Prevent panic situation when the IP address to which the SMB server is bound is removed from the local machine's network configuration
141    7. Only use Local RPC mechanism unless Gateway mode is on
142    8. Identify and fix the problems with running the RX library on Hyperthreaded systems
143    9. Add support for Named Pipes within the afs filesystem
144   10. Add support for Windows XP2 - dynamically open/close ports in the firewall
145   11. Add support for r/w mounts in the Freelance fake root.afs volume.
146   12. Re-write afscreds.exe to support:
147          1. choosing between Kerberos 5 and Kerberos 4 on a per principal basis
148          2. providing users with the ability to map multiple cells to a single principal
149          3. providing change password functionality on a per principal basis
150          4. no longer include drive mapping
151          5. configuration of afscreds startup options in shortcut
152   13. Re-write afs_config.exe to be only "per user" functionality which does not require admin privileges
153          1. default cell and principal for the user
154          2. drive mappings
155          3. visibility of afs creds and setting of afs creds startup options
156   14. Create new afs_admin.exe tool to be installed in the administrator folder (or use MMS) which contains
157          1. afs client service cell name
158          2. integrated logon configuration
159          3. Gateway configuration
160          4. start/stop service
161          5. global drive mapping
162          6. submount management
163          7. file/volume server preferences
164          8. afs cells
165          9. cache configuration
166         10. diagnostics
167         11. network configuration
168         12. miscellaneous
169         13. need to add support for all of the new registry values since 1.2.8
170   15. Identify why 16-bit DOS applications executed out of AFS fail
171   16. Create new Windows Security Group to which users can be added for them to become AFS Client Administrators
172   17. Add support for configurable Icon file representing AFS folders within the Explorer Shell
173   18. Documentation Documentation Documentation
174   19. Large File support (> 2GB)
175   20. Integrate KFW installation into the NSIS installer
176   21. Fix High Security mode (prevents SMB shares from being shared by more than one session)
177