The variable 'm_unique' is an afs_uint32 where the desired parameter
must be of type struct VLCallBack when attempting to call VL_GetAddrs.
I do not know how this code ever worked on any platform as the stack
was being overwritten.
This produced binary, vos.exe on windows, also generates massive
memory leaks. I do not think we care all that much because the
utility does not stay around all that long. However, the fact that
the API makes it so easy to lose memory is scary.
In Mount_ReadSubmount() cache the first response to GetNetbiosName()
since the result won't change and the work necessary to get the result
is considerable. We don't want to be calling it loops over and over
again.
The Power Management Exit routine was instructing the thread to
terminate but was not waiting for the conclusion of the operation
before returning control to the caller. This allows the service
to pass control to the Service Manager before cleanup was properly
completed.
Rodney Dyer (UNCC) reported that the "fs setserverprefs" command if
issued multiple times would result in the AFSD server becoming unresponsive.
This appears to have been caused by improper use of writeLocks, a failure
to use writeLocks when necessary, and improper reference counting on the
cm_server_t data structures placed into the cm_allServersp list.
Improve error checking in GetNumOfIpAddrs to prevent potential
invalid memory access if the IP Address Table cannot be accessed.
(win2000 with no privs)
NotifyAddrChange() on Win2000 without privs fails. Detect the failure
and terminate the IPChangeMonitor thread to prevent an infinite loop
eating up system resources.
first pass at routine to detect kernel mem* routines
====================
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.
====================
FIXES 3651
second try
====================
FIXES 3651
third try
====================
FIXES 3651
this time for sure.
includes the definitions too, this way we can not have macros conflict with
headers we don't need
====================
FIXES 3651
this time for sure.
includes the definitions too, this way we can not have macros conflict with
headers we don't need
====================
FIXES 3651
this time for sure.
includes the definitions too, this way we can not have macros conflict with
headers we don't need
Move the README files to the top directory where they belong.
====================
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.
====================
As of 1.3.60 move the Windows Readme files from src to top directory
grab current version from http://grand.central.org/dl/cellservdb/CellServDB
====================
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.
====================
grab latest version from http://grand.central.org/dl/cellservdb/CellServDB
For UNCC, allow old style netbios name to be the default for this
release to give them time to convert their scripts to use \\AFS\...
instead of \\%MACHINENAME%-AFS\...
Change the NetbiosName registry value from REG_SZ to REG_EXPAND_SZ
and add the necessary code to expand the strings. This will allow
the use of %COMPUTERNAME%-AFS in case people want to explicitly use
a non-portable name.
====================
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.
====================
Fix the DependsOnGroup NetworkProvider key to ensure it is placed in
the correct location
Change the location of the ShowTrayIcon key so that we no longer store
user data in the HKLM Transarc tree
====================
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.
====================
Move the locations of the ShowTrayIcon and cell name based expiration
reminder keys out of the HKLM\SOFTWARE\Transarc... key and into the
{HKCU,HKLM}\SOFTWARE\OpenAFS\... tree. This is safe to do because these
keys are transient in nature (created by afscreds.exe) and really do
belong to the user and not to the machine.
Fix the location of the registy values to be used for specifying
the service dependencies of the AFS Network Provider. AFS is
dependent on PNP_TDI (tcpip, netbt, etc); RpcSs; and NetBios.
Upgrades were failing to read the Cell name from the proper location
so that it could be restored.
This is an initial crack at one of the big problems with the existing
AFS client. Multiple processes in a single session or in multiple
sessions (terminal server) can step on each others toes. This is
because the dual use of RPC and SMB calls to perform operations.
Since nothing is done in a single synchronized step, there are plenty
of opportunities for data overwrites to occur.
The change was to add a Global Mutex within all of the ktc_XXXToken
calls. The use of "Global\" prefixed kernel objects are only supported
on Win2000 and above. This is fine because this is all we claim to
support. But if someone was to decide to run this code on NT4 or Win95
anyway bad things will now happen. This should probably be cleaned up
if someone has time.
openbsd:
use vrele instead of AFS_RELE in unmount to avert panic
acquire GLOCK in mount (not really needed but oh well)
other finnicky and needless tweaks
Support for FreeBSD 5.x client.
Both 4.x and 5.x now use vnodes from the system pool instead of attaching
a private vnode to the vcache.
Most of this is from Garrett Wollman <wollman@khavrinen.lcs.mit.edu>,
I just did some integration and made it work again on 4.x.
Cleaned up the language file installations.
Place language files in the same directories as the non-language files.
Do not install the MSVC files twice.
Install debug symbols for language files for all languages; not just German.
Discovered after wasting a huge quantity of time that it is possible
for OpenAFS to be installed on machines already containing the IBM/Transarc
AFS. Add the PATH environment variable to the log to allow this situation
to be detected.
Add support for a new form of automatic share name generation
\\netbiosName\cellname
which means that on systems with the loopback adapter you can
now refer to the athena.mit.edu afs cell as \\afs\athena.mit.edu\
This is implemented within cm_FindShare(). If the share name is not
one of the special ones and cannot be found in the Submounts table,
check to see if it is a known cell name, If so, create a path to
the share of /afs/sharename with the "sharename" being lower cased.
(I hope there are no cell names in mixed or upper case. This won't
work.)
* at my request Asanka Hearth of MIT ripped out all of the code used
the compute the Netbios Name of the SMB Server and the mountRoot
and constructed one commonly used library called lanahelper.lib.
This library is now constructed in the WINNT/afsd directory and
used throughout the tree. At least we now have consistency if
nothing else.
These changes are an attempt to provide a bit more consistency when
it comes to the establishment of SMB drive mappings. Whenever mappings
are created, the same name is used when a name can be found. This is
supposed to mirror what is performed in the integrated logon DLL.