summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVadim Bendebury <vbendeb@chromium.org>2018-01-10 19:00:49 -0800
committerchrome-bot <chrome-bot@chromium.org>2018-01-12 03:27:10 -0800
commitd99e680b3ce01db9561739862d4e584820060db7 (patch)
tree6b9a39da53c07127a57fc29d308f4838c634abd5
parentd9831e6015ccce99dc77e734368622abde1947fa (diff)
downloadchrome-ec-d99e680b3ce01db9561739862d4e584820060db7.tar.gz
ccd: add distinct return code to indicate that password is required
When user is trying to execute 'ccd open' or 'ccd unlock' and password is set, the return error code does not allow to tell the reason for the command failure. Let's add a distinct return code to indicate this condition so that the user can supply password. BRANCH=cr50 BUG=b:62537474 TEST=verified along with the accompanying gsctool modifications. Change-Id: I286f87ab12114cd7dd7ebcdf0e321f7a24723367 Signed-off-by: Vadim Bendebury <vbendeb@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/861208 Reviewed-by: Randall Spangler <rspangler@chromium.org>
-rw-r--r--common/ccd_config.c4
-rw-r--r--include/tpm_vendor_cmds.h1
2 files changed, 3 insertions, 2 deletions
diff --git a/common/ccd_config.c b/common/ccd_config.c
index 6f65626849..544ff33454 100644
--- a/common/ccd_config.c
+++ b/common/ccd_config.c
@@ -910,7 +910,7 @@ static enum vendor_cmd_rc ccd_open(void *buf,
if (!input_size) {
*response_size = 1;
buffer[0] = EC_ERROR_PARAM_COUNT;
- return VENDOR_RC_INTERNAL_ERROR;
+ return VENDOR_RC_PASSWORD_REQUIRED;
}
/*
@@ -995,7 +995,7 @@ static enum vendor_cmd_rc ccd_unlock(void *buf,
if (!input_size) {
*response_size = 1;
buffer[0] = EC_ERROR_PARAM_COUNT;
- return VENDOR_RC_INTERNAL_ERROR;
+ return VENDOR_RC_PASSWORD_REQUIRED;
}
/*
diff --git a/include/tpm_vendor_cmds.h b/include/tpm_vendor_cmds.h
index 55066dd221..b61ca2623c 100644
--- a/include/tpm_vendor_cmds.h
+++ b/include/tpm_vendor_cmds.h
@@ -74,6 +74,7 @@ enum vendor_cmd_rc {
VENDOR_RC_NOT_ALLOWED = 7,
VENDOR_RC_NO_SUCH_SUBCOMMAND = 8,
VENDOR_RC_IN_PROGRESS = 9,
+ VENDOR_RC_PASSWORD_REQUIRED = 10,
/* Only 7 bits available; max is 127 */
VENDOR_RC_NO_SUCH_COMMAND = 127,