#include "InstallerUtil.h"
-#define OSP_INSTALLER_VERSION "version=[20130410.3]"
+#define OSP_INSTALLER_VERSION "version=[20130411.1]"
#define DIR_BIN L"/bin"
#define DIR_INFO L"/info"
INSTALLER_ERROR_CERTIFICATE_CHAIN_VERIFICATION_FAILED = 33,
INSTALLER_ERROR_CERTIFICATE_EXPIRED = 34,
INSTALLER_ERROR_PRIVILEGE_INVALID = 41,
+ INSTALLER_ERROR_PRIVILEGE_LEVEL_INVALID = 42,
INSTALLER_ERROR_MENU_ICON_NOT_FOUND = 51,
INSTALLER_ERROR_FATAL_ERROR = 61,
INSTALLER_ERROR_OUT_OF_STORAGE = 62,
if (pPrivilegeList != null)
{
r = PrivilegeHandler::GenerateCipherPrivilege(packageId, *pPrivilegeList, apiVisibility, privileges, hmacPrivileges, stringPrivilegeList);
- TryCatch(!IsFailed(r), error = INSTALLER_ERROR_PRIVILEGE_INVALID, "privMgr.GeneratePrivilegeString() failed");
+ TryCatch(r != E_ILLEGAL_ACCESS, error = INSTALLER_ERROR_PRIVILEGE_LEVEL_INVALID, "privMgr.GeneratePrivilegeString() failed. [PRIVILEGE_LEVEL_VIOLATION]");
+ TryCatch(!IsFailed(r), error = INSTALLER_ERROR_PRIVILEGE_INVALID, "privMgr.GeneratePrivilegeString() failed. [INVALID_PRIVILEGE]");
+
}
__pContext->__privileges = privileges;
bool validStringFlag = false;
bool validLevelFlag = true;
bool resultFlag = true;
+ bool resultLevelFlag = true;
byte privilegeBit = 0;
byte* pResult = null;
IEnumerator* pEnum = null;
if (validLevelFlag == false)
{
- AppLogExceptionTag(OSP_INSTALLER, "[E_INVALID_ARG] The application does not have the visibility to register [%ls]", pTempString->GetPointer());
- resultFlag = false;
+ AppLogExceptionTag(OSP_INSTALLER, "[E_ILLEGAL_ACCESS] The application does not have the privilege level to register [%ls]", pTempString->GetPointer());
+ resultLevelFlag = false;
}
}
- TryCatchTag(OSP_INSTALLER, resultFlag == true, r = E_INVALID_ARG, "[E_INVALID_ARG] One of privilege string is invalid.");
+ TryCatchTag(OSP_INSTALLER, resultLevelFlag == true, r = E_ILLEGAL_ACCESS, "[E_ILLEGAL_ACCESS] Unauthorized privileges are detected.");
+ TryCatchTag(OSP_INSTALLER, resultFlag == true, r = E_INVALID_ARG, "[E_INVALID_ARG] Unsupported privilege strings are detected.");
*ppBitwisePrivilege = pResult;