mirror of
https://foundry.openuru.org/gitblit/r/CWE-ou-minkata.git
synced 2025-07-18 11:19:10 +00:00
Use servername instead of UUID for credential store.
Unfortunately, the UUID is used in such a way that makes it unlikely to be unique. The server name is the current best option.
This commit is contained in:
@ -43,7 +43,7 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com
|
||||
#include "pfPasswordStore.h"
|
||||
#include "pfPasswordStore_impl.h"
|
||||
|
||||
#include "plProduct.h"
|
||||
#include "pnNetBase/pnNbSrvs.h"
|
||||
|
||||
#include <Security/Security.h>
|
||||
|
||||
@ -52,7 +52,7 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com
|
||||
*****************************************************************************/
|
||||
const plString pfMacPasswordStore::GetPassword(const plString& username)
|
||||
{
|
||||
plString service = plProduct::UUID();
|
||||
plString service = GetServerDisplayName();
|
||||
|
||||
void* passwd = nullptr;
|
||||
uint32_t passwd_len = 0;
|
||||
@ -78,7 +78,7 @@ const plString pfMacPasswordStore::GetPassword(const plString& username)
|
||||
|
||||
bool pfMacPasswordStore::SetPassword(const plString& username, const plString& password)
|
||||
{
|
||||
plString service = plProduct::UUID();
|
||||
plString service = GetServerDisplayName();
|
||||
|
||||
return SecKeychainAddGenericPassword(nullptr,
|
||||
service.GetSize(),
|
||||
|
@ -43,8 +43,8 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com
|
||||
#include "pfPasswordStore.h"
|
||||
#include "pfPasswordStore_impl.h"
|
||||
|
||||
#include "plProduct.h"
|
||||
#include "plFormat.h"
|
||||
#include "pnNetBase/pnNbSrvs.h"
|
||||
|
||||
#include "hsWindows.h"
|
||||
#include <wincred.h>
|
||||
@ -55,7 +55,7 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com
|
||||
const plString pfWin32PasswordStore::GetPassword(const plString& username)
|
||||
{
|
||||
PCREDENTIALW credential;
|
||||
plString target = plFormat("%s__%s", plProduct::UUID(), username);
|
||||
plString target = plFormat("{}__{}", GetServerDisplayName(), username);
|
||||
plString password = plString::Null;
|
||||
|
||||
if (!CredReadW(target.ToWchar().GetData(), CRED_TYPE_GENERIC, 0, &credential)) {
|
||||
@ -74,7 +74,7 @@ const plString pfWin32PasswordStore::GetPassword(const plString& username)
|
||||
bool pfWin32PasswordStore::SetPassword(const plString& username, const plString& password)
|
||||
{
|
||||
CREDENTIALW credential;
|
||||
plString target = plFormat("%s__%s", plProduct::UUID(), username);
|
||||
plString target = plFormat("{}__{}", GetServerDisplayName(), username);
|
||||
|
||||
if (password.IsNull()) {
|
||||
if (CredDeleteW(target.ToWchar().GetData(), CRED_TYPE_GENERIC, 0)) {
|
||||
|
Reference in New Issue
Block a user