fixes for the following report from "Jeremy Stribling" <jstribl@us.ibm.com>
- In the GetPrincipalLockStatus function, an attempt is made to set the
lockedUntil variable to the minimum locked value for that principal among
all servers. However, lockedUntil is set to 0 immediately before this, and
so all attempts to find a locked value less than it fails, and so
lockedUntil always comes out of that function as 0.
- Also in the GetPrincipalLockStatus function, if the principal is
locked out according to all servers, then the main loop will exit when
ubik_CallIter returns the UNOSERVERS error code. But, since the return
code for GetPrincipalLockStatus is set to 1 if and only if ubik_CallIter
returns an error code of 0, this results in an return code of 0 being
returned for GetPrincipalLockStatus when in reality no error occured.
- A similar problem occurs in the kas_PrincipalUnlock function. If the
principal is not currently locked out of any server, ubik_CallIter will
iterate through all servers and return a UNOSERVERS error code. Again, in
this case the return code of kas_PrincipalUnlock will not be set to 1 and
an error will be indicated even though no error occured.
- In kas_PrincipalKeySet, the return code is never set to 1, even when
it completes successfully, so it seems that an error always occurs when
calling this function.
a) if the kernel headers use redhat's header-file selection thing, and
doesn't define their __BOOT_KERNEL* symbols if not.
b) which AFS kernel modules (single-processor, multi-processor, or both)
it makes sense to compile against these kernel headers. e.g. in a
CONFIG_MODVERSIONS environment, it only makes sense to compile for the
same SMP-ness as the headers.
in response to reports from hartmans@mekinok.com and zacheiss@mit.edu
will also autodisable for linux if no --with-linux-kernel-headers specified
and none found
convert rest of source to afsconfig; include rcsid macros
====================
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.
====================
remove bogus if/define/endif triple
====================
revert non-rcsid and afsconfig portion of patch
otherwise we get weird errors like:
"/usr/include/strings.h", line 52.20: 1506-010 (W) Macro index invoked with a null argument for parameter __s1.
"/usr/include/strings.h", line 52.20: 1506-041 (E) The invocation of macro index contains fewer arguments than required by the macro definition.
"/usr/include/strings.h", line 52.14: 1506-275 (S) Unexpected text ',' encountered.
from the conflict
====================
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.
====================
to prevent more of same errors
====================
====================
continue to placate aix hatred
====================
aix needs more help
====================
aix needs more help