libadmin-kas-bugfixes-20010711
authorDerrick Brashear <shadow@dementia.org>
Wed, 11 Jul 2001 18:25:56 +0000 (18:25 +0000)
committerDerrick Brashear <shadow@dementia.org>
Wed, 11 Jul 2001 18:25:56 +0000 (18:25 +0000)
commit2cd573ce0a532d2db209225e183c6f4c926ae997
tree6e60698617fbf23b1abc6f279782a01231a595c8
parentbba4ffa025ce906f577678fe8ee1f8b857d80bd4
libadmin-kas-bugfixes-20010711

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.
src/libadmin/kas/afs_kasAdmin.c