LICENSE MIT
another plane trip, more tweaks to the logic for handling re-binding
of the netbios name after a power management resume event.
(cherry picked from commit 270cb6a9c9903d92b9b6276a542968667056066a)
LICENSE MIT
another small tweak to ensure that we don't create a symlink for "fo" when
a mountpoint or symlink for "foo" exists
(cherry picked from commit d52f19ca0aacdbfdf64bdeaae4153c1f2ec7f385)
LICENSE MIT
Modify the search order for determining the location of CellServDB
and other client configuration files.
1. AFSCONF environment variable
2. registry setting
3. NEW - use All Users\AppData\OpenAFS\Client only if CellServDB exists
4. use Program Files\OpenAFS\Client
(cherry picked from commit d094c65f14e674dfc334b9c6b3f5ac871e3dd1e6)
LICENSE MIT
Merge cellconfig.c and the afsreg library.
Redefine the location of the client cellservdb directory in dirpath
in terms of the cellservdb direction and not the install directory.
(although they point at the same thing now by default.)
Future changes to the location of the cellservdb directory should
be made in afsreg.
(cherry picked from commit 753ba70cf257aded0fae158c556a25ca72243214)
LICENSE MIT
modify cellservdb.c to use cm_GetCellServDB() from libafsconf.dll.
This results in both libadmin and the afs client control panel using
the same CellServDB as the rest of the system.
(cherry picked from commit c9339265f7036dd465a4bbf8e762fc246f45d6a4)
LICENSE MIT
re-order the building of directories so that libafsconf.dll is built
before other directories that might want to use it.
(cherry picked from commit f224734230f6bfd27f1a1dfa159d1f38797c7999)
LICENSE MIT
cm_config.c was a nightmare. there were several functions that each
computed the location of the OpenAFS Client configuration directory
in a slightly different way. Now there is a single exported function
that determines the directory, and another that determines the name
of the CellServDB file. All of the other functons in cm_config.c and
throughout the src/WINNT/afsd directory now use those two functions.
The new rule for determining the location of the OpenAFS Client
configuration directory and hence the CellServDB file location is:
1. check the AFSCONF environment variable
2. check the HKLM\SOFTWARE\OpenAFS\Client CellServDBDir registry value
3. use AFSDIR_CLIENT_ETC_DIRPATH which currently refers to
\Program Files\OpenAFS\Client
(For 1.5 branch remove all references to DJGPP in cm_config.[ch])
(cherry picked from commit 0f41a173925407cc7f6a597477ba25691f73d119)
LICENSE IPL10
based on patch from mib@unimelb.edu.au
clean up taskq after ourselves and don't leave ourself marked system processes
(cherry picked from commit 462f1fb90defcb351657655442024f971705d945)
LICENSE MIT
For Windows, EDQUOT == WSAEDQUOT. Define it in the right places
so that in the end STATUS_OUT_OF_QUOTA can be returned to the application.
(cherry picked from commit 03e72233178bf18a8978d62c3bcc4ebb743e6710)
LICENSE MIT
prevent the afs client service from crashing when fs newcell is executed
(cherry picked from commit 02a80e05a73d9df50fbd427e30ca862706afcbc1)
LICENSE MIT
move afslogon.dll, afscpcc.exe and afs_cpa.cpl to
\Program Files\OpenAFS\Client\Program in order to get them out
of the %windir% tree
(cherry picked from commit 3d0ebe1f7841ac6ca9db593b587a13d85a950ac5)
LICENSE MIT
Conditionalize error translation on the existence of EDQUOT not
on platform macros
(cherry picked from commit 9ce814aa99b6877843f38c7fdd8fde09cb2a743c)
LICENSE IPL10
based on work from shadow@dementia.org
since the tasklist lock and rcu stuff can/will be de-exported, and we don't
need it anyway...
(cherry picked from commit c5afa335a8ffb86cf17c32173eb0e1c26500dd80)
LICENSE MIT
avoid a deadlock during server probes initiated by the ipaddr change
daemon thread.
(missed a case in DELTA windows-ipaddr-change-server-deadlock-20080106)
(cherry picked from commit 162cb95707f739170ab4a025a801a430c86ae70a)
LICENSE MIT
The algorithms that were used to produce a Netbios name were broken.
The name that was produced when the hostname was too long was in fact
longer than the maximum permitted netbios name.
Also, the "NetbiosName" value was not used as a suffix when the loopback
adapter was not installed. The hardcoded string "AFS" was used instead.
(cherry picked from commit 2542c5e07f52c89f25f290153f0b4669076ae654)
LICENSE IPL10
FIXES 83890
try again to do something sensible so we don't default wrong
(cherry picked from commit 5a93678e3943fa2c71d51f25f84b4efd5f3700e6)
LICENSE MIT
Cell names are published as share names. As a result they are searched
for as part of the Dfs Referral evaluation. If share "foo" can not be
reached, the CIFS client will fallback to searching for "fo" as well.
Since the freelance client automatically adds a symlink for prefixes
of the cell name, this results in both "foo" and "fo" being added to
the freelance root.afs volume. This patch prevents that negative side
effect.
(cherry picked from commit 36bdf1ccd859fb0039d8ae9abd04f9eea08d704d)
LICENSE IPL10
panic log decoder from Jason. Still needs some work for Leopard but we should
be able to make a go of this
(cherry picked from commit 711dc57c7fa053efa58c02df8788da1a2c7889bf)
LICENSE IPL10
attempt to provide dkms support.
this does work on my fc8 test host. it may not work in all cases.
(cherry picked from commit 7dc71d1154294cdc5f5aba4c3e58a00972318960)
LICENSE MIT
There are circumstances where a volume object is being accessed and the
volume is marked indicating that the volume location information is out
of date but where it is also pointless and perhaps dangerous to block
waiting for the rpc to complete. One example is when processing the
cmdebug requests. If we know that we are not going to use the volume
object to contact a server, then we can now set the CM_GETVOL_FLAG_NO_RESET
flag.
(cherry picked from commit d32156e5c1fb36994650754a11379df6ccc94909)
LICENSE MIT
when moving up in the directory tree we search the recorded fid list to
find a matching fid that we have already crossed. we must also reset
the fid count based upon what we discover.
(cherry picked from commit 16a90b2f8dfe875991bca0dee516c531fcc3aeee)
LICENSE IPL10
support sprc, sparc64, ppc, ppc64, s390, s390x. we should be able to cope with
all these. if not, fix it.
(cherry picked from commit ef6fc588bcab9a59e54050899937407be962b074)
LICENSE IPL10
FIXES 75101
give an option to not enforce the dotted principal check. document it.
(cherry picked from commit 98a68f9b021a06d056fb3b97681b9cfc04873d55)
LICENSE IPL10
create fsync glock and cond before we initialize volume package. oops?
(cherry picked from commit 0e8adf69538638b8caa56d9b1fa72beba74734bd)
LICENSE IPL10
add option to addsite to allow adding a site where there is already a release-
equivalent volume resident, where thus we don't want to mark unreleased
(possible by dumping an existing RO and restoring with -readonly at the
new site)
add ability to vos clone to a readonly or backup with the correct ID and name
add ability when restoring a RW to a new site to leave the volume at the old
site intact
all changes are internal to vos and can be used with any OpenAFS from 2006
or later (supporting changes in namei to not create volumes with bad parent
id went in in December 2005)
(cherry picked from commit e1c4e77d13122c2bb66d532ffd9dfc2e75318c04)
LICENSE IPL10
FIXES 46937
based on comments from jhutz@cmu.edu; runnign thread in the ticket
(cherry picked from commit 22c059a9138be33eeeed910badcac3ebfeea24b5)
LICENSE BSD
Document the 2TB volume and partition limits and the -abortthreshold flag
to the AFS fileserver.
(cherry picked from commit efba39ead059458d222f923db83c660f23c20b80)
LICENSE MIT
The path ioctl operations have several issues:
(1) the specified path for "fs examine, whereis, whichcell, flush" and so
always has the follow symlinks and mount points semantics. This makes
it impossible to determine what the FID of a symlink or mount point is.
(2) "fs examine" out is not the result of a single pioctl operation but is
actually the combined output of half a dozen operations. Path evaluation
is an expensive operation. It would be faster if the caller could
evaluate the FID first and then perform all of the rest of the operations
by specifying the FID instead of the path.
(3) fs output reports all objects as files. By adding a GetFileType
pioctl more informative output can be provided that indicates what
type of object the path evaluates to.
(4) the Windows fs command includes a number of commands that do nothing
but exist only because the Unix cache manager supports them.
This delta adds a new extendible data structure cm_ioctl_query_opts_t which
can be optionally specified with pioctls that do not already require
input data. The first two fields of this structure are 'literal' and
'fid'. The literal field is used to indicate whether the last component
of the path should be evaluated following symlinks and mount points.
The fid field permits a fid to be specified.
A new GetFileType pioctl has been added. The type of objects are now
output.
A new "-literal" option is available for "fs examine, flush, whereis, and
whichcell.
Unimplemented fs commands have been removed.
(cherry picked from commit 88e915d8f976898e75a6afe8bc7b6d7c33b8a121)