version 1.6, 2002/04/20 21:15:31
|
version 1.9, 2002/08/29 00:27:52
|
|
|
//%//////////////////////////////////////////////////////////////////////////// |
//%///////////////////////////////////////////////////////////////////////////// |
// | // |
// Copyright (c) 2000, 2001 BMC Software, Hewlett-Packard Company, IBM, |
// Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM, |
// The Open Group, Tivoli Systems | // The Open Group, Tivoli Systems |
// | // |
// Permission is hereby granted, free of charge, to any person obtaining a copy | // Permission is hereby granted, free of charge, to any person obtaining a copy |
|
|
// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION | // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION |
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
// | // |
//============================================================================= |
//============================================================================== |
// | // |
// Author: Sushma Fernandes, Hewlett Packard Company (sushma_fernandes@hp.com) | // Author: Sushma Fernandes, Hewlett Packard Company (sushma_fernandes@hp.com) |
// | // |
|
|
try | try |
{ | { |
_userFileHandler = 0; | _userFileHandler = 0; |
_userFileHandler = new UserFileHandler(); |
|
| |
|
#ifndef PEGASUS_NO_PASSWORDFILE |
|
_userFileHandler = new UserFileHandler(); |
|
#endif |
_authHandler = 0; | _authHandler = 0; |
_authHandler = new AuthorizationHandler(repository); | _authHandler = new AuthorizationHandler(repository); |
} | } |
|
|
{ | { |
PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::addUser"); | PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::addUser"); |
| |
|
#ifndef PEGASUS_NO_PASSWORDFILE |
// | // |
// Check if the user is a valid system user | // Check if the user is a valid system user |
// | // |
ArrayDestroyer<char> un(userName.allocateCString()); |
if ( !System::isSystemUser( userName.getCString() ) ) |
if ( !System::isSystemUser( un.getPointer() ) ) |
|
{ | { |
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
throw InvalidSystemUser(userName); | throw InvalidSystemUser(userName); |
|
|
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
throw e; | throw e; |
} | } |
|
#endif |
| |
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
} | } |
|
|
{ | { |
PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::modifyUser"); | PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::modifyUser"); |
| |
|
#ifndef PEGASUS_NO_PASSWORDFILE |
try | try |
{ | { |
_userFileHandler->modifyUserEntry(userName, password, newPassword); | _userFileHandler->modifyUserEntry(userName, password, newPassword); |
|
|
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
throw e; | throw e; |
} | } |
|
#endif |
|
|
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
} | } |
| |
|
|
void UserManager::removeUser(const String& userName) | void UserManager::removeUser(const String& userName) |
{ | { |
PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::removeUser"); | PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::removeUser"); |
|
|
|
#ifndef PEGASUS_NO_PASSWORDFILE |
try | try |
{ | { |
_userFileHandler->removeUserEntry(userName); | _userFileHandler->removeUserEntry(userName); |
|
|
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
throw e; | throw e; |
} | } |
|
#endif |
| |
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
} | } |
|
|
{ | { |
PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::getAllUserNames"); | PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::getAllUserNames"); |
| |
|
#ifndef PEGASUS_NO_PASSWORDFILE |
try | try |
{ | { |
_userFileHandler->getAllUserNames( userNames ); | _userFileHandler->getAllUserNames( userNames ); |
|
|
{ | { |
throw e; | throw e; |
} | } |
|
#endif |
| |
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
} | } |
|
|
{ | { |
PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::verifyCIMUser"); | PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::verifyCIMUser"); |
| |
|
#ifndef PEGASUS_NO_PASSWORDFILE |
try | try |
{ | { |
if ( _userFileHandler->verifyCIMUser( userName )) | if ( _userFileHandler->verifyCIMUser( userName )) |
|
|
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
throw e; | throw e; |
} | } |
|
#else |
|
PEG_METHOD_EXIT(); |
|
return false; |
|
#endif |
} | } |
| |
// | // |
|
|
{ | { |
PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::verifyCIMUserPassword"); | PEG_METHOD_ENTER(TRC_USER_MANAGER, "UserManager::verifyCIMUserPassword"); |
| |
|
#ifndef PEGASUS_NO_PASSWORDFILE |
try | try |
{ | { |
if ( _userFileHandler->verifyCIMUserPassword( userName, password )) | if ( _userFileHandler->verifyCIMUserPassword( userName, password )) |
|
|
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
throw e; | throw e; |
} | } |
|
#else |
|
PEG_METHOD_EXIT(); |
|
return false; |
|
#endif |
} | } |
| |
// | // |