core: add SPC lock error

This commit is contained in:
Dan Williams
2010-08-05 22:13:51 -05:00
parent b4d3ab014d
commit 52f9c721d3
3 changed files with 9 additions and 0 deletions

View File

@@ -119,6 +119,8 @@ bin2hexstr (const guint8 *bytes, int len)
return result;
}
/**********************************************************************/
static gboolean
check_command (const char *buf, gsize len, guint8 cmd, gsize min_len, GError **error)
{
@@ -154,6 +156,11 @@ check_command (const char *buf, gsize len, guint8 cmd, gsize min_len, GError **e
"DM command %d not allowed in the current device mode",
cmd);
return FALSE;
case DIAG_CMD_BAD_SPC_MODE:
g_set_error (error, QCDM_COMMAND_ERROR, QCDM_COMMAND_SPC_LOCKED,
"DM command %d not allowed because the Service Programming Code is locked",
cmd);
return FALSE;
default:
break;
}

View File

@@ -75,6 +75,7 @@ qcdm_command_error_get_type (void)
ENUM_ENTRY (QCDM_COMMAND_NOT_ACCEPTED, "QcdmCommandNotAccepted"),
ENUM_ENTRY (QCDM_COMMAND_BAD_MODE, "QcdmCommandBadMode"),
ENUM_ENTRY (QCDM_COMMAND_NVCMD_FAILED, "QcdmCommandNvCmdFailed"),
ENUM_ENTRY (QCDM_COMMAND_SPC_LOCKED, "QcdmCommandSpcLocked"),
{ 0, 0, 0 }
};

View File

@@ -41,6 +41,7 @@ enum {
QCDM_COMMAND_NOT_ACCEPTED = 5,
QCDM_COMMAND_BAD_MODE = 6,
QCDM_COMMAND_NVCMD_FAILED = 7,
QCDM_COMMAND_SPC_LOCKED = 8,
};
#define QCDM_COMMAND_ERROR (qcdm_command_error_quark ())