DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- return password.setPasswordPolicyQuality(quality);
+ return password.setQuality(quality);
}
EXPORT_API int dpm_password_get_quality(device_policy_manager_h handle, dpm_password_quality_e *quality)
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- int ret = password.getPasswordPolicyQuality();
+ int ret = password.getQuality();
if (ret < 0) {
return -1;
}
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- return password.setPasswordPolicyMinimumLength(value);
+ return password.setMinimumLength(value);
}
EXPORT_API int dpm_password_get_minimum_length(device_policy_manager_h handle, int *value)
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- int ret = password.getPasswordPolicyMinimumLength();
+ int ret = password.getMinimumLength();
if (ret < 0) {
return -1;
}
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- return password.setMinPasswordPolicyComplexChars(value);
+ return password.setMinComplexChars(value);
}
EXPORT_API int dpm_password_get_min_complex_chars(device_policy_manager_h handle, int *value)
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- int ret = password.getMinPasswordPolicyComplexChars();
+ int ret = password.getMinComplexChars();
if (ret < 0) {
return -1;
}
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- return password.setMaximumFailedPasswordPolicyForWipe(value);
+ return password.setMaximumFailedForWipe(value);
}
EXPORT_API int dpm_password_get_maximum_failed_attempts_for_wipe(device_policy_manager_h handle, int *value)
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- int ret = password.getMaximumFailedPasswordPolicyForWipe();
+ int ret = password.getMaximumFailedForWipe();
if (ret < 0) {
return -1;
}
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- return password.setPasswordPolicyExpires(value);
+ return password.setExpires(value);
}
EXPORT_API int dpm_password_get_expires(device_policy_manager_h handle, int *value)
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- int ret = password.getPasswordPolicyExpires();
+ int ret = password.getExpires();
if (ret < 0) {
return -1;
}
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- return password.setPasswordPolicyHistory(value);
+ return password.setHistory(value);
}
EXPORT_API int dpm_password_get_history(device_policy_manager_h handle, int *value)
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- int ret = password.getPasswordPolicyHistory();
+ int ret = password.getHistory();
if (ret < 0) {
return -1;
}
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- return password.setPasswordPolicyPattern(pattern);
+ return password.setPattern(pattern);
}
EXPORT_API int dpm_password_reset(device_policy_manager_h handle, const char *passwd)
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- return password.resetPasswordPolicy(passwd);
+ return password.reset(passwd);
}
EXPORT_API int dpm_password_enforce_change(device_policy_manager_h handle)
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- return password.enforcePasswordPolicyChange();
+ return password.enforceChange();
}
EXPORT_API int dpm_password_set_max_inactivity_time_device_lock(device_policy_manager_h handle, int value)
{
RET_ON_FAILURE(handle, DPM_ERROR_INVALID_PARAMETER);
RET_ON_FAILURE(status >= DPM_PASSWORD_STATUS_NORMAL &&
- status <= DPM_PASSWORD_STATUS_MAX_ATTEMPTS_EXCEEDED,
- DPM_ERROR_INVALID_PARAMETER);
+ status <= DPM_PASSWORD_STATUS_MAX_ATTEMPTS_EXCEEDED,
+ DPM_ERROR_INVALID_PARAMETER);
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- return password.setPasswordPolicyStatus(status);
+ return password.setStatus(status);
}
EXPORT_API int dpm_password_get_status(device_policy_manager_h handle, dpm_password_status_e *status)
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- int ret = password.getPasswordPolicyStatus();
+ int ret = password.getStatus();
if (ret < 0) {
return -1;
}
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- return password.deletePasswordPolicyPattern();
+ return password.deletePattern();
}
EXPORT_API int dpm_password_get_pattern(device_policy_manager_h handle, char **pattern)
DevicePolicyContext &client = GetDevicePolicyContext(handle);
PasswordPolicy password = client.createPolicyInterface<PasswordPolicy>();
- *pattern = ::strdup(password.getPasswordPolicyPattern().c_str());
+ *pattern = ::strdup(password.getPattern().c_str());
return DPM_ERROR_NONE;
}
{
}
-int PasswordPolicy::setPasswordPolicyQuality(const int quality)
+int PasswordPolicy::setQuality(const int quality)
{
try {
- return context->methodCall<int>("PasswordPolicy::setPasswordPolicyQuality", quality);
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::setQuality", quality);
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::getPasswordPolicyQuality()
+int PasswordPolicy::getQuality()
{
try {
- return context->methodCall<int>("PasswordPolicy::getPasswordPolicyQuality");
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::getQuality");
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::setPasswordPolicyMinimumLength(const int value)
+int PasswordPolicy::setMinimumLength(int value)
{
try {
- return context->methodCall<int>("PasswordPolicy::setPasswordPolicyMinimumLength", value);
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::setMinimumLength", value);
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::getPasswordPolicyMinimumLength()
+int PasswordPolicy::getMinimumLength()
{
try {
- return context->methodCall<int>("PasswordPolicy::getPasswordPolicyMinimumLength");
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::getMinimumLength");
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::setMinPasswordPolicyComplexChars(const int value)
+int PasswordPolicy::setMinComplexChars(int value)
{
try {
- return context->methodCall<int>("PasswordPolicy::setMinPasswordPolicyComplexChars", value);
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::setMinComplexChars", value);
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::getMinPasswordPolicyComplexChars()
+int PasswordPolicy::getMinComplexChars()
{
try {
- return context->methodCall<int>("PasswordPolicy::getMinPasswordPolicyComplexChars");
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::getMinComplexChars");
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::setMaximumFailedPasswordPolicyForWipe(const int value)
+int PasswordPolicy::setMaximumFailedForWipe(int value)
{
try {
- return context->methodCall<int>("PasswordPolicy::setMaximumFailedPasswordPolicyForWipe", value);
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::setMaximumFailedForWipe", value);
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::getMaximumFailedPasswordPolicyForWipe()
+int PasswordPolicy::getMaximumFailedForWipe()
{
try {
- return context->methodCall<int>("PasswordPolicy::getMaximumFailedPasswordPolicyForWipe");
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::getMaximumFailedForWipe");
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::setPasswordPolicyExpires(const int value)
+int PasswordPolicy::setExpires(int value)
{
try {
- return context->methodCall<int>("PasswordPolicy::setPasswordPolicyExpires", value);
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::setExpires", value);
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::getPasswordPolicyExpires()
+int PasswordPolicy::getExpires()
{
try {
- return context->methodCall<int>("PasswordPolicy::getPasswordPolicyExpires");
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::getExpires");
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::setPasswordPolicyHistory(const int value)
+int PasswordPolicy::setHistory(int value)
{
try {
- return context->methodCall<int>("PasswordPolicy::setPasswordPolicyHistory", value);
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::setHistory", value);
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::getPasswordPolicyHistory()
+int PasswordPolicy::getHistory()
{
try {
- return context->methodCall<int>("PasswordPolicy::getPasswordPolicyHistory");
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::getHistory");
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::setPasswordPolicyPattern(const std::string& pattern)
+int PasswordPolicy::setPattern(const std::string &pattern)
{
try {
- return context->methodCall<int>("PasswordPolicy::setPasswordPolicyPattern", pattern);
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::setPattern", pattern);
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::resetPasswordPolicy(const std::string& passwd)
+int PasswordPolicy::reset(const std::string &passwd)
{
try {
- return context->methodCall<int>("PasswordPolicy::resetPasswordPolicy", passwd);
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::reset", passwd);
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::enforcePasswordPolicyChange()
+int PasswordPolicy::enforceChange()
{
try {
- return context->methodCall<int>("PasswordPolicy::enforcePasswordPolicyChange");
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::enforceChange");
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::setMaxInactivityTimeDeviceLock(const int value)
+int PasswordPolicy::setMaxInactivityTimeDeviceLock(int value)
{
try {
return context->methodCall<int>("PasswordPolicy::setMaxInactivityTimeDeviceLock", value);
- } catch (runtime::Exception& e) {
+ } catch (runtime::Exception &e) {
return -1;
}
}
{
try {
return context->methodCall<int>("PasswordPolicy::getMaxInactivityTimeDeviceLock");;
- } catch (runtime::Exception& e) {
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::setPasswordPolicyStatus(const int status)
+int PasswordPolicy::setStatus(int status)
{
try {
- return context->methodCall<int>("PasswordPolicy::setPasswordPolicyStatus", status);
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::setStatus", status);
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::getPasswordPolicyStatus()
+int PasswordPolicy::getStatus()
{
try {
- return context->methodCall<int>("PasswordPolicy::getPasswordPolicyStatus");
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::getStatus");
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::deletePasswordPolicyPattern()
+int PasswordPolicy::deletePattern()
{
try {
- return context->methodCall<int>("PasswordPolicy::deletePasswordPolicyPattern");
- } catch (runtime::Exception& e) {
+ return context->methodCall<int>("PasswordPolicy::deletePattern");
+ } catch (runtime::Exception &e) {
return -1;
}
}
-std::string PasswordPolicy::getPasswordPolicyPattern()
+std::string PasswordPolicy::getPattern()
{
std::string error("Error");
try {
- return context->methodCall<std::string>("PasswordPolicy::getPasswordPolicyPattern");
- } catch (runtime::Exception& e) {
+ return context->methodCall<std::string>("PasswordPolicy::getPattern");
+ } catch (runtime::Exception &e) {
return error;
}
}
-int PasswordPolicy::setMaximumCharacterOccurrences(const int value)
+int PasswordPolicy::setMaximumCharacterOccurrences(int value)
{
try {
return context->methodCall<int>("PasswordPolicy::setMaximumCharacterOccurrences", value);
- } catch (runtime::Exception& e) {
+ } catch (runtime::Exception &e) {
return -1;
}
}
{
try {
return context->methodCall<int>("PasswordPolicy::getMaximumCharacterOccurrences");
- } catch (runtime::Exception& e) {
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::setMaximumNumericSequenceLength(const int value)
+int PasswordPolicy::setMaximumNumericSequenceLength(int value)
{
try {
return context->methodCall<int>("PasswordPolicy::setMaximumNumericSequenceLength", value);
- } catch (runtime::Exception& e) {
+ } catch (runtime::Exception &e) {
return -1;
}
}
{
try {
return context->methodCall<int>("PasswordPolicy::getMaximumNumericSequenceLength");
- } catch (runtime::Exception& e) {
+ } catch (runtime::Exception &e) {
return -1;
}
}
-int PasswordPolicy::setForbiddenStrings(const std::vector<std::string>& forbiddenStrings)
+int PasswordPolicy::setForbiddenStrings(const std::vector<std::string> &forbiddenStrings)
{
try {
return context->methodCall<int>("PasswordPolicy::setForbiddenStrings", forbiddenStrings);
- } catch (runtime::Exception& e) {
+ } catch (runtime::Exception &e) {
return -1;
}
}
std::vector<std::string> error;
try {
return context->methodCall<std::vector<std::string>>("PasswordPolicy::getForbiddenStrings");
- } catch (runtime::Exception& e) {
+ } catch (runtime::Exception &e) {
return error;
}
}
#include <bundle.h>
#include <notification.h>
#include <system_settings.h>
-#include <auth-passwd-admin.h>
-#include <klay/auth/user.h>
#include <klay/audit/logger.h>
#include "privilege.h"
#include "policy-builder.h"
+#include "password-manager.h"
#include "password.hxx"
#define SIMPLE_PASSWORD_LENGTH 4
-#define PASSWORD_EMPTY_STRING "\\n"
namespace DevicePolicyManager {
namespace {
-PasswordPolicy::PasswordPolicyQuality qualityType;
std::string PasswordPattern;
std::vector<std::string> ForbiddenStrings;
-inline int getPasswordPolicy(PolicyControlContext& ctx, const std::string& name)
+int PasswordStatus = 0;
+
+inline int getPasswordPolicy(PolicyControlContext &ctx, const std::string &name)
{
return ctx.getPolicy(name, ctx.getPeerUid());
}
-inline int setPasswordPolicy(PolicyControlContext& ctx, const std::string& name, int value)
+inline int setPasswordPolicy(PolicyControlContext &ctx, const std::string &name, int value)
{
return ctx.setPolicy(name, value, "password", name);
}
return ret;
}
-int transformValueFromIntToQualityType(const int quality, PasswordPolicy::PasswordPolicyQuality &changed_quality)
+inline PasswordManager::QualityType getPasswordQualityType(int quality)
{
switch (quality) {
case PasswordPolicy::DPM_PASSWORD_QUALITY_UNSPECIFIED:
- changed_quality = PasswordPolicy::DPM_PASSWORD_QUALITY_UNSPECIFIED;
- break;
+ return AUTH_PWD_QUALITY_UNSPECIFIED;
case PasswordPolicy::DPM_PASSWORD_QUALITY_SIMPLE_PASSWORD:
- changed_quality = PasswordPolicy::DPM_PASSWORD_QUALITY_SIMPLE_PASSWORD;
- break;
+ return AUTH_PWD_QUALITY_UNSPECIFIED;
case PasswordPolicy::DPM_PASSWORD_QUALITY_SOMETHING:
- changed_quality = PasswordPolicy::DPM_PASSWORD_QUALITY_SOMETHING;
- break;
+ return AUTH_PWD_QUALITY_SOMETHING;
case PasswordPolicy::DPM_PASSWORD_QUALITY_NUMERIC:
- changed_quality = PasswordPolicy::DPM_PASSWORD_QUALITY_NUMERIC;
- break;
+ return AUTH_PWD_QUALITY_NUMERIC;
case PasswordPolicy::DPM_PASSWORD_QUALITY_ALPHABETIC:
- changed_quality = PasswordPolicy::DPM_PASSWORD_QUALITY_ALPHABETIC;
- break;
+ return AUTH_PWD_QUALITY_ALPHABETIC;
case PasswordPolicy::DPM_PASSWORD_QUALITY_ALPHANUMERIC:
- changed_quality = PasswordPolicy::DPM_PASSWORD_QUALITY_ALPHANUMERIC;
- break;
+ return AUTH_PWD_QUALITY_ALPHANUMERIC;
default:
- ERROR("unknown password quality");
- return -1;
- break;
+ throw runtime::Exception("Unknown quality type: " + std::to_string(quality));
}
-
- return 0;
-}
-
-int transformQualityFromDPMToAuth(const int dpm_quality, password_quality_type &auth_quality)
-{
- switch (dpm_quality) {
- case PasswordPolicy::DPM_PASSWORD_QUALITY_UNSPECIFIED:
- auth_quality = AUTH_PWD_QUALITY_UNSPECIFIED;
- break;
- case PasswordPolicy::DPM_PASSWORD_QUALITY_SIMPLE_PASSWORD:
- auth_quality = AUTH_PWD_QUALITY_UNSPECIFIED;
- break;
- case PasswordPolicy::DPM_PASSWORD_QUALITY_SOMETHING:
- auth_quality = AUTH_PWD_QUALITY_SOMETHING;
- break;
- case PasswordPolicy::DPM_PASSWORD_QUALITY_NUMERIC:
- auth_quality = AUTH_PWD_QUALITY_NUMERIC;
- break;
- case PasswordPolicy::DPM_PASSWORD_QUALITY_ALPHABETIC:
- auth_quality = AUTH_PWD_QUALITY_ALPHABETIC;
- break;
- case PasswordPolicy::DPM_PASSWORD_QUALITY_ALPHANUMERIC:
- auth_quality = AUTH_PWD_QUALITY_ALPHANUMERIC;
- break;
- default:
- ERROR("unknown");
- return -1;
- break;
- }
-
- return 0;
}
} // namespace
PasswordPolicy::PasswordPolicy(PolicyControlContext &ctxt) :
context(ctxt)
{
- ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setPasswordPolicyQuality)(int));
- ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setPasswordPolicyMinimumLength)(int));
- ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setMinPasswordPolicyComplexChars)(int));
- ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setMaximumFailedPasswordPolicyForWipe)(int));
- ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setPasswordPolicyExpires)(int));
- ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setPasswordPolicyHistory)(int));
- ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setPasswordPolicyPattern)(std::string));
- ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::resetPasswordPolicy)(std::string));
- ctxt.registerNonparametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::enforcePasswordPolicyChange));
+ ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setQuality)(int));
+ ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setMinimumLength)(int));
+ ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setMinComplexChars)(int));
+ ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setMaximumFailedForWipe)(int));
+ ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setExpires)(int));
+ ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setHistory)(int));
+ ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setPattern)(std::string));
+ ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::reset)(std::string));
+ ctxt.registerNonparametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::enforceChange));
ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setMaxInactivityTimeDeviceLock)(int));
- ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setPasswordPolicyStatus)(int));
- ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getPasswordPolicyStatus));
- ctxt.registerNonparametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::deletePasswordPolicyPattern));
+ ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setStatus)(int));
+ ctxt.registerNonparametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::deletePattern));
ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setMaximumCharacterOccurrences)(int));
ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setMaximumNumericSequenceLength)(int));
ctxt.registerParametricMethod(this, DPM_PRIVILEGE_PASSWORD, (int)(PasswordPolicy::setForbiddenStrings)(std::vector<std::string>));
- ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getPasswordPolicyQuality));
- ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getPasswordPolicyMinimumLength));
- ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getMinPasswordPolicyComplexChars));
- ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getMaximumFailedPasswordPolicyForWipe));
- ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getPasswordPolicyExpires)());
- ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getPasswordPolicyHistory)());
+ ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getStatus));
+ ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getQuality));
+ ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getMinimumLength));
+ ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getMinComplexChars));
+ ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getMaximumFailedForWipe));
+ ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getExpires)());
+ ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getHistory)());
ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getMaxInactivityTimeDeviceLock));
- ctxt.registerNonparametricMethod(this, "", (std::string)(PasswordPolicy::getPasswordPolicyPattern));
+ ctxt.registerNonparametricMethod(this, "", (std::string)(PasswordPolicy::getPattern));
ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getMaximumCharacterOccurrences));
ctxt.registerNonparametricMethod(this, "", (int)(PasswordPolicy::getMaximumNumericSequenceLength));
ctxt.registerNonparametricMethod(this, "", (std::vector<std::string>)(PasswordPolicy::getForbiddenStrings));
{
}
-int PasswordPolicy::setPasswordPolicyQuality(const int quality)
+int PasswordPolicy::setQuality(int quality)
{
- policy_h *p_policy;
- password_quality_type auth_quality_type = AUTH_PWD_QUALITY_UNSPECIFIED;
-
- if (transformValueFromIntToQualityType(quality, qualityType) != 0) {
- return -1;
- }
-
- if (transformQualityFromDPMToAuth(qualityType, auth_quality_type) != 0) {
- return -1;
- }
-
- if (auth_passwd_new_policy(&p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_user(p_policy, context.getPeerUid()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_quality(p_policy, auth_quality_type) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
+ passwordManager.setQuality(getPasswordQualityType(quality));
- if (qualityType == PasswordPolicy::DPM_PASSWORD_QUALITY_SIMPLE_PASSWORD) {
- if (auth_passwd_set_min_length(p_policy, SIMPLE_PASSWORD_LENGTH) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
+ if (quality == DPM_PASSWORD_QUALITY_SIMPLE_PASSWORD) {
+ passwordManager.setMinimumLength(SIMPLE_PASSWORD_LENGTH);
}
- }
-
- if (auth_passwd_set_policy(p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
+ passwordManager.enforce();
+ } catch (runtime::Exception& e) {
+ ERROR(e.what());
return -1;
}
- auth_passwd_free_policy(p_policy);
-
setPasswordPolicy(context, "password-quality", quality);
- if (qualityType == PasswordPolicy::DPM_PASSWORD_QUALITY_SIMPLE_PASSWORD) {
+ if (quality == DPM_PASSWORD_QUALITY_SIMPLE_PASSWORD) {
setPasswordPolicy(context, "password-minimum-length", SIMPLE_PASSWORD_LENGTH);
}
return 0;
}
-int PasswordPolicy::getPasswordPolicyQuality()
+int PasswordPolicy::getQuality()
{
return getPasswordPolicy(context, "password-quality");
}
-int PasswordPolicy::setPasswordPolicyMinimumLength(const int value)
+int PasswordPolicy::setMinimumLength(int value)
{
- policy_h *p_policy;
-
- if (auth_passwd_new_policy(&p_policy) != AUTH_PASSWD_API_SUCCESS) {
- return -1;
- }
-
- if (auth_passwd_set_user(p_policy, context.getPeerUid()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_min_length(p_policy, value) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
- if (auth_passwd_set_policy(p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
+ passwordManager.setMinimumLength(value);
+ passwordManager.enforce();
+ } catch (runtime::Exception& e) {
+ ERROR("Failed to set minimum length");
return -1;
}
- auth_passwd_free_policy(p_policy);
-
return setPasswordPolicy(context, "password-minimum-length", value);
}
-int PasswordPolicy::getPasswordPolicyMinimumLength()
+int PasswordPolicy::getMinimumLength()
{
return getPasswordPolicy(context, "password-minimum-length");
}
-int PasswordPolicy::setMinPasswordPolicyComplexChars(const int value)
+int PasswordPolicy::setMinComplexChars(int value)
{
- policy_h *p_policy;
-
- if (auth_passwd_new_policy(&p_policy) != AUTH_PASSWD_API_SUCCESS) {
- return -1;
- }
-
- if (auth_passwd_set_user(p_policy, context.getPeerUid()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_min_complex_char_num(p_policy, value) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_policy(p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
+ passwordManager.setMinimumComplexCharacters(value);
+ passwordManager.enforce();
+ } catch (runtime::Exception& e) {
+ ERROR("Failed to set minimum complex characters");
return -1;
}
- auth_passwd_free_policy(p_policy);
-
return setPasswordPolicy(context, "password-minimum-complexity", value);
}
-int PasswordPolicy::getMinPasswordPolicyComplexChars()
+int PasswordPolicy::getMinComplexChars()
{
return getPasswordPolicy(context, "password-minimum-complexity");
}
-int PasswordPolicy::setMaximumFailedPasswordPolicyForWipe(const int value)
+int PasswordPolicy::setMaximumFailedForWipe(int value)
{
- policy_h *p_policy;
-
- if (auth_passwd_new_policy(&p_policy) != AUTH_PASSWD_API_SUCCESS) {
- return -1;
- }
-
- if (auth_passwd_set_user(p_policy, context.getPeerUid()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_max_attempts(p_policy, value) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_policy(p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
+ passwordManager.setMaximumFailedForWipe(value);
+ passwordManager.enforce();
+ } catch (runtime::Exception& e) {
+ ERROR("Failed to set maximum failed count for wipe");
return -1;
}
- auth_passwd_free_policy(p_policy);
-
return setPasswordPolicy(context, "password-maximum-failure-count", (value == 0) ? UINT_MAX : value);
}
-int PasswordPolicy::getMaximumFailedPasswordPolicyForWipe()
+int PasswordPolicy::getMaximumFailedForWipe()
{
unsigned int result = getPasswordPolicy(context, "password-maximum-failure-count");
- return (result == UINT_MAX)? 0 : result;
+ return (result == UINT_MAX) ? 0 : result;
}
-int PasswordPolicy::setPasswordPolicyExpires(const int value)
+int PasswordPolicy::setExpires(int value)
{
- policy_h *p_policy;
-
- if (auth_passwd_new_policy(&p_policy) != AUTH_PASSWD_API_SUCCESS) {
- return -1;
- }
-
- if (auth_passwd_set_user(p_policy, context.getPeerUid()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_validity(p_policy, value) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_policy(p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
+ passwordManager.setExpires(value);
+ passwordManager.enforce();
+ } catch (runtime::Exception& e) {
+ ERROR("Failed to set expire");
return -1;
}
- auth_passwd_free_policy(p_policy);
-
return setPasswordPolicy(context, "password-expired", (value == 0) ? UINT_MAX : value);
}
-int PasswordPolicy::getPasswordPolicyExpires()
+int PasswordPolicy::getExpires()
{
unsigned int result = getPasswordPolicy(context, "password-expired");
- return (result == UINT_MAX)? 0 : result;
+ return (result == UINT_MAX) ? 0 : result;
}
-int PasswordPolicy::setPasswordPolicyHistory(const int value)
+int PasswordPolicy::setHistory(int value)
{
- policy_h *p_policy;
-
- if (auth_passwd_new_policy(&p_policy) != AUTH_PASSWD_API_SUCCESS) {
- return -1;
- }
-
- if (auth_passwd_set_user(p_policy, context.getPeerUid()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_history_size(p_policy, value) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_policy(p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
+ passwordManager.setHistory(value);
+ passwordManager.enforce();
+ } catch (runtime::Exception& e) {
+ ERROR("Failed to set history size");
return -1;
}
- auth_passwd_free_policy(p_policy);
-
return setPasswordPolicy(context, "password-history", value);
}
-int PasswordPolicy::getPasswordPolicyHistory()
+int PasswordPolicy::getHistory()
{
return getPasswordPolicy(context, "password-history");
}
-int PasswordPolicy::setPasswordPolicyPattern(const std::string &pattern)
+int PasswordPolicy::setPattern(const std::string &pattern)
{
- policy_h *p_policy;
-
- if (auth_passwd_new_policy(&p_policy) != AUTH_PASSWD_API_SUCCESS) {
- return -1;
- }
-
- if (auth_passwd_set_user(p_policy, context.getPeerUid()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_pattern(p_policy, pattern.c_str()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_policy(p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
+ passwordManager.setPattern(pattern.c_str());
+ passwordManager.enforce();
+ } catch (runtime::Exception& e) {
+ ERROR("Failed to set pattern");
return -1;
}
- auth_passwd_free_policy(p_policy);
-
PasswordPattern = pattern;
- if (PasswordPattern.compare("") == 0)
- PasswordPattern = PASSWORD_EMPTY_STRING;
- return 0;//SetPolicy(context, "password-pattern", PasswordPattern);
+ return 0;
}
-int PasswordPolicy::resetPasswordPolicy(const std::string &passwd)
+int PasswordPolicy::reset(const std::string &passwd)
{
- int ret = 0;
-
- if (auth_passwd_reset_passwd(AUTH_PWD_NORMAL, context.getPeerUid(), passwd.c_str()) != AUTH_PASSWD_API_SUCCESS) {
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
+ passwordManager.resetPassword(passwd);
+ } catch (runtime::Exception& e) {
+ ERROR(e.what());
return -1;
}
- return ret;
+ return 0;
}
-int PasswordPolicy::enforcePasswordPolicyChange()
+int PasswordPolicy::enforceChange()
{
int ret = 0;
int lock_type = 0;
::bundle_add_str_array(b, "user-data", simple_user_data, 6);
else
::bundle_add_str_array(b, "user-data", passwd_user_data, 6);
+
ret = ::aul_launch_app_for_uid("org.tizen.dpm-syspopup", b, context.getPeerUid());
::bundle_free(b);
if (ret < 0) {
ERROR("Failed to launch Password Application.");
return -1;
- } else {
- return setPasswordPolicy(context, "password-status", PasswordPolicy::DPM_PASSWORD_STATUS_CHANGE_REQUIRED);
}
+
+ PasswordStatus = DPM_PASSWORD_STATUS_CHANGE_REQUIRED;
+ return 0;
}
-int PasswordPolicy::setMaxInactivityTimeDeviceLock(const int value)
+int PasswordPolicy::setMaxInactivityTimeDeviceLock(int value)
{
return setPasswordPolicy(context, "password-inactivity-timeout", value);
}
return getPasswordPolicy(context, "password-inactivity-timeout");
}
-int PasswordPolicy::setPasswordPolicyStatus(const int status)
+int PasswordPolicy::setStatus(int status)
{
- int current_status = getPasswordPolicy(context, "password-status");
-
- if (status >= PasswordPolicy::DPM_PASSWORD_STATUS_MAX) {
+ if (status >= DPM_PASSWORD_STATUS_MAX) {
return -1;
}
- if (status == PasswordPolicy::DPM_PASSWORD_STATUS_MAX_ATTEMPTS_EXCEEDED) {
+ if (status == DPM_PASSWORD_STATUS_MAX_ATTEMPTS_EXCEEDED) {
ERROR("Max Attempts Exceeded.");
return -1;
}
- if (current_status == PasswordPolicy::DPM_PASSWORD_STATUS_CHANGE_REQUIRED) {
- if (status == PasswordPolicy::DPM_PASSWORD_STATUS_CHANGED) {
- return setPasswordPolicy(context, "password-status", PasswordPolicy::DPM_PASSWORD_STATUS_NORMAL);
- } else if (status == PasswordPolicy::DPM_PASSWORD_STATUS_NOT_CHANGED) {
+ if (PasswordStatus == DPM_PASSWORD_STATUS_CHANGE_REQUIRED) {
+ if (status == DPM_PASSWORD_STATUS_CHANGED) {
+ PasswordStatus = DPM_PASSWORD_STATUS_NORMAL;
+ return 0;
+ } else if (status == DPM_PASSWORD_STATUS_NOT_CHANGED) {
return createNotificationLaunch();
}
- } else if (current_status == PasswordPolicy::DPM_PASSWORD_STATUS_NORMAL) {
- if (status == PasswordPolicy::DPM_PASSWORD_STATUS_CHANGE_REQUIRED) {
- return setPasswordPolicy(context, "password-status", status);
+ } else if (PasswordStatus == DPM_PASSWORD_STATUS_NORMAL) {
+ if (status == DPM_PASSWORD_STATUS_CHANGE_REQUIRED) {
+ PasswordStatus = status;
+ return 0;
}
}
return -1;
}
-int PasswordPolicy::getPasswordPolicyStatus()
+int PasswordPolicy::getStatus()
{
- int status = context.getPolicy("password-status");
- return status;
+ return PasswordStatus;
}
-int PasswordPolicy::deletePasswordPolicyPattern()
+int PasswordPolicy::deletePattern()
{
- policy_h *p_policy;
-
- if (auth_passwd_new_policy(&p_policy) != AUTH_PASSWD_API_SUCCESS) {
- return -1;
- }
-
- if (auth_passwd_set_user(p_policy, context.getPeerUid()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_pattern(p_policy, NULL) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_policy(p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
+ passwordManager.deletePatern();
+ passwordManager.enforce();
+ PasswordPattern.clear();
+ } catch (runtime::Exception& e) {
+ ERROR(e.what());
return -1;
}
- auth_passwd_free_policy(p_policy);
-
- PasswordPattern.clear();
- return 0;//SetPolicy(context, "password-pattern", PASSWORD_EMPTY_STRING);
+ return 0;
}
-std::string PasswordPolicy::getPasswordPolicyPattern()
+std::string PasswordPolicy::getPattern()
{
- PasswordPattern = getPasswordPolicy(context, "password-pattern");
- if (PasswordPattern.compare(PASSWORD_EMPTY_STRING) == 0)
- PasswordPattern = "";
-
return PasswordPattern;
}
-int PasswordPolicy::setMaximumCharacterOccurrences(const int value)
+int PasswordPolicy::setMaximumCharacterOccurrences(int value)
{
- policy_h *p_policy;
-
- if (auth_passwd_new_policy(&p_policy) != AUTH_PASSWD_API_SUCCESS) {
- return -1;
- }
-
- if (auth_passwd_set_user(p_policy, context.getPeerUid()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_max_char_occurrences(p_policy, value) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_policy(p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
+ passwordManager.setMaximumCharacterOccurrences(value);
+ passwordManager.enforce();
+ } catch (runtime::Exception& e) {
+ ERROR(e.what());
return -1;
}
- auth_passwd_free_policy(p_policy);
-
return setPasswordPolicy(context, "password-maximum-character-occurrences", (value == 0) ? UINT_MAX : value);
}
int PasswordPolicy::getMaximumCharacterOccurrences()
{
- unsigned int result = getPasswordPolicy(context, "password-maximum-character-occurrences");
- return (result == UINT_MAX)? 0 : result;
+ unsigned int result = getPasswordPolicy(context, "password-maximum-character-occurrences");
+ return (result == UINT_MAX) ? 0 : result;
}
-int PasswordPolicy::setMaximumNumericSequenceLength(const int value)
+int PasswordPolicy::setMaximumNumericSequenceLength(int value)
{
- policy_h *p_policy;
-
- if (auth_passwd_new_policy(&p_policy) != AUTH_PASSWD_API_SUCCESS) {
- return -1;
- }
-
- if (auth_passwd_set_user(p_policy, context.getPeerUid()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_max_num_seq_len(p_policy, value) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- if (auth_passwd_set_policy(p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
+ passwordManager.setMaximumNumericSequenceLength(value);
+ passwordManager.enforce();
+ } catch (runtime::Exception& e) {
+ ERROR(e.what());
return -1;
}
- auth_passwd_free_policy(p_policy);
-
return setPasswordPolicy(context, "password-numeric-sequences-length", (value == 0) ? UINT_MAX : value);
}
int PasswordPolicy::getMaximumNumericSequenceLength()
{
unsigned int result = getPasswordPolicy(context, "password-numeric-sequences-length");
- return (result == UINT_MAX)? 0 : result;
+ return (result == UINT_MAX) ? 0 : result;
}
int PasswordPolicy::setForbiddenStrings(const std::vector<std::string> &forbiddenStrings)
{
- unsigned int count = 0;
- policy_h *p_policy;
- std::string xmlForbiddenStrings;
-
- if (auth_passwd_new_policy(&p_policy) != AUTH_PASSWD_API_SUCCESS) {
- return -1;
- }
-
- if (auth_passwd_set_user(p_policy, context.getPeerUid()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
-
- for (std::vector<std::string>::const_iterator iter = forbiddenStrings.begin(); iter != forbiddenStrings.end(); ++iter) {
- if (auth_passwd_set_forbidden_passwd(p_policy, (*iter).c_str()) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
- return -1;
- }
- }
+ try {
+ PasswordManager passwordManager(context.getPeerUid());
- if (auth_passwd_set_policy(p_policy) != AUTH_PASSWD_API_SUCCESS) {
- auth_passwd_free_policy(p_policy);
+ passwordManager.setForbiddenStrings(forbiddenStrings);
+ passwordManager.enforce();
+ } catch (runtime::Exception& e) {
+ ERROR(e.what());
return -1;
}
- auth_passwd_free_policy(p_policy);
-
std::copy(forbiddenStrings.begin(), forbiddenStrings.end(), std::back_inserter(ForbiddenStrings));
- for (std::vector<std::string>::const_iterator iter = forbiddenStrings.begin(); iter != forbiddenStrings.end(); ++iter) {
- xmlForbiddenStrings += (*iter).c_str();
- if (++count < forbiddenStrings.size())
- xmlForbiddenStrings += PASSWORD_EMPTY_STRING;
- }
- if (xmlForbiddenStrings.compare("") == 0) {
- xmlForbiddenStrings = PASSWORD_EMPTY_STRING;
- }
-
- return 0;//SetPolicy(context, "password-forbidden-strings", xmlForbiddenStrings.c_str());
+ return 0;
}
std::vector<std::string> PasswordPolicy::getForbiddenStrings()
{
-#if 0
- unsigned int nPos;
- std::string xmlForbiddenStrings;
-
- xmlForbiddenStrings = getPasswordPolicy(context, "password-forbidden-strings");
- ForbiddenStrings.clear();
- while ((nPos = xmlForbiddenStrings.find_first_of(PASSWORD_EMPTY_STRING)) != xmlForbiddenStrings.npos) {
- if (nPos > 0) {
- ForbiddenStrings.push_back(xmlForbiddenStrings.substr(0, nPos));
- }
- xmlForbiddenStrings = xmlForbiddenStrings.substr(nPos + 3);
- }
- if (xmlForbiddenStrings.length() > 0)
- ForbiddenStrings.push_back(xmlForbiddenStrings.substr(0, nPos));
-
- if ((*ForbiddenStrings.begin()).compare(PASSWORD_EMPTY_STRING) == 0)
- *ForbiddenStrings.begin() = "";
-#endif
-
return ForbiddenStrings;
}