summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiloslav Trmač <mitr@redhat.com>2010-10-27 01:04:20 +0200
committerMiloslav Trmač <mitr@redhat.com>2010-10-27 01:04:20 +0200
commitdf7340bfbd639183db54c0a3be7751bbf18aa83a (patch)
tree0ab7423bc101220b174ac11c37b1ee75767f1b1f
parent9e449eb5c839ad0d996332d39aad8f7f39cb234a (diff)
downloadncrypto-df7340bfbd639183db54c0a3be7751bbf18aa83a.tar.gz
ncrypto-df7340bfbd639183db54c0a3be7751bbf18aa83a.tar.xz
ncrypto-df7340bfbd639183db54c0a3be7751bbf18aa83a.zip
Set state to NDS_FINISHED even on ncr_digest_final failure
-rw-r--r--lib/ncrypto_alg.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/ncrypto_alg.c b/lib/ncrypto_alg.c
index 60f3696..7583fb8 100644
--- a/lib/ncrypto_alg.c
+++ b/lib/ncrypto_alg.c
@@ -213,9 +213,9 @@ ncr_digest_final (struct ncr_digest_session *sess, void *dest,
g_return_val_if_fail (dest != NULL, CKR_ARGUMENTS_BAD);
- if (write (sess->fd, "", 0) == -1)
- return ckr_errno ();
- res = read (sess->fd, dest, sess->md_size);
+ res = write (sess->fd, "", 0);
+ if (res != -1)
+ res = read (sess->fd, dest, sess->md_size);
sess->state = NDS_FINISHED;
if (res == sess->md_size)
return CKR_OK;