summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyungwook Tak <k.tak@samsung.com>2016-03-07 16:42:20 +0900
committerKyungwook Tak <k.tak@samsung.com>2016-03-07 16:42:20 +0900
commit3b59aaeb3639a6ce42fceb1fa2019448cac01234 (patch)
tree54a177c6a12a492318aa60a8ef3de0558aa6f5ca
parent5f012dcaebd43777298ffd9cf716c90994bb4dc2 (diff)
downloadauth-fw-3b59aaeb3639a6ce42fceb1fa2019448cac01234.tar.gz
auth-fw-3b59aaeb3639a6ce42fceb1fa2019448cac01234.tar.bz2
auth-fw-3b59aaeb3639a6ce42fceb1fa2019448cac01234.zip
Fix serialize/deserialize order sync for reset API
Change-Id: Ie1a5c9f9bc8ea216074a9a0d80d9a519cd1d3539 Signed-off-by: Kyungwook Tak <k.tak@samsung.com>
-rw-r--r--src/server/service/password.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/server/service/password.cpp b/src/server/service/password.cpp
index 8e8f2a0..2c0ebde 100644
--- a/src/server/service/password.cpp
+++ b/src/server/service/password.cpp
@@ -194,13 +194,14 @@ int PasswordService::processResetFunctions(PasswordHdrs hdr, MessageBuffer& buff
int result = AUTH_PASSWD_API_ERROR_SERVER_ERROR;
std::string newPasswd, emptyStr="";
- unsigned int passwdType = 0, rec_user = 0;
+ unsigned int passwdType = 0;
+ uid_t rec_user = 0;
switch (hdr) {
case PasswordHdrs::HDR_RST_PASSWD:
Deserialization::Deserialize(buffer, passwdType);
- Deserialization::Deserialize(buffer, newPasswd);
Deserialization::Deserialize(buffer, rec_user);
+ Deserialization::Deserialize(buffer, newPasswd);
result = m_pwdManager.resetPassword(passwdType, newPasswd, rec_user);
break;
@@ -214,11 +215,11 @@ int PasswordService::processResetFunctions(PasswordHdrs hdr, MessageBuffer& buff
int PasswordService::processPolicyFunctions(PasswordHdrs hdr, MessageBuffer& buffer)
{
int result = AUTH_PASSWD_API_ERROR_SERVER_ERROR;
- int rec_user = 0;
- auth_password_policy policy;
switch (hdr) {
- case PasswordHdrs::HDR_SET_PASSWD_POLICY:
+ case PasswordHdrs::HDR_SET_PASSWD_POLICY: {
+ auth_password_policy policy;
+
Deserialization::Deserialize(buffer, policy.policyFlag);
Deserialization::Deserialize(buffer, policy.uid);
Deserialization::Deserialize(buffer, policy.maxAttempts);
@@ -243,8 +244,10 @@ int PasswordService::processPolicyFunctions(PasswordHdrs hdr, MessageBuffer& buf
m_pwdManager.setPasswordHistory(policy.uid, policy.historySize);
}
break;
+ }
- case PasswordHdrs::HDR_DIS_PASSWD_POLICY:
+ case PasswordHdrs::HDR_DIS_PASSWD_POLICY: {
+ uid_t rec_user = 0;
Deserialization::Deserialize(buffer, rec_user);
result = m_policyManager.disablePolicy(rec_user);
if (result == AUTH_PASSWD_API_SUCCESS) {
@@ -253,6 +256,7 @@ int PasswordService::processPolicyFunctions(PasswordHdrs hdr, MessageBuffer& buf
m_pwdManager.setPasswordHistory(rec_user, 0);
}
break;
+ }
default:
LogError("Unknown msg header.");