From 2b57feadf2f8d9b5f09dbca1661f617a762471ba Mon Sep 17 00:00:00 2001 From: "ludovic.rousseau" Date: Sun, 28 Mar 2010 16:15:26 +0000 Subject: [PATCH] Use a temporary variable to not lose negative values (errors) Fix westcos-tool.c:591: warning: comparison of unsigned expression < 0 is always false westcos-tool.c:615: warning: comparison of unsigned expression < 0 is always false git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@4166 c6295689-39f2-0310-b995-f0e70906c6a9 --- src/tools/westcos-tool.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/tools/westcos-tool.c b/src/tools/westcos-tool.c index 34df8bd5..c89081cf 100644 --- a/src/tools/westcos-tool.c +++ b/src/tools/westcos-tool.c @@ -575,6 +575,7 @@ int main(int argc, char *argv[]) { sc_changekey_t ck; struct sc_pin_cmd_pin pin_cmd; + int ret; memset(&pin_cmd, 0, sizeof(pin_cmd)); memset(&ck, 0, sizeof(ck)); @@ -586,11 +587,12 @@ int main(int argc, char *argv[]) pin_cmd.data = (u8*)pin; pin_cmd.max_length = 8; - ck.new_key.key_len = sc_build_pin(ck.new_key.key_value, + ret = sc_build_pin(ck.new_key.key_value, sizeof(ck.new_key.key_value), &pin_cmd, 1); - if(ck.new_key.key_len<0) + if(ret < 0) goto out; + ck.new_key.key_len = ret; r = sc_card_ctl(card, SC_CARDCTL_WESTCOS_CHANGE_KEY, &ck); if(r) goto out; } @@ -599,6 +601,7 @@ int main(int argc, char *argv[]) { sc_changekey_t ck; struct sc_pin_cmd_pin puk_cmd; + int ret; memset(&puk_cmd, 0, sizeof(puk_cmd)); memset(&ck, 0, sizeof(ck)); @@ -610,11 +613,12 @@ int main(int argc, char *argv[]) puk_cmd.data = (u8*)puk; puk_cmd.max_length = 8; - ck.new_key.key_len = sc_build_pin(ck.new_key.key_value, + ret = sc_build_pin(ck.new_key.key_value, sizeof(ck.new_key.key_value), &puk_cmd, 1); - if(ck.new_key.key_len<0) + if(ret < 0) goto out; + ck.new_key.key_len = ret; r = sc_card_ctl(card, SC_CARDCTL_WESTCOS_CHANGE_KEY, &ck); if(r) goto out; }