diff options
author | Love Hörnquist Åstrand <lha@kth.se> | 2008-11-02 07:15:56 +0000 |
---|---|---|
committer | Love Hörnquist Åstrand <lha@kth.se> | 2008-11-02 07:15:56 +0000 |
commit | 9eead5477d893c8150202ec5bd4e8aa1da3afce0 (patch) | |
tree | d8d575b51d4405294331a0313ce60c8ed9897c8f | |
parent | ca4645d2636a557e06a9d6594dbc808cc0b792f4 (diff) |
handle return value of krb5_storage_{read,write}
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@24012 ec53bebd-3082-4978-b11e-865c3cabbd6b
-rw-r--r-- | lib/krb5/kcm.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/krb5/kcm.c b/lib/krb5/kcm.c index 3fb9b1ec6..67720e60b 100644 --- a/lib/krb5/kcm.c +++ b/lib/krb5/kcm.c @@ -703,6 +703,7 @@ kcm_get_next (krb5_context context, krb5_kcm_cursor c = KCMCURSOR(*cursor); krb5_storage *request, *response; krb5_data response_data; + ssize_t sret; again: @@ -719,13 +720,14 @@ kcm_get_next (krb5_context context, return ret; } - ret = krb5_storage_write(request, - &c->uuids[c->offset], - sizeof(c->uuids[c->offset])); + sret = krb5_storage_write(request, + &c->uuids[c->offset], + sizeof(c->uuids[c->offset])); c->offset++; - if (ret) { + if (sret != sizeof(c->uuids[c->offset])) { krb5_storage_free(request); - return ret; + krb5_clear_error_message(context); + return ENOMEM; } ret = kcm_call(context, k, request, &response, &response_data); |