aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/krb5/ccache/cc_kcm.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/lib/krb5/ccache/cc_kcm.c b/src/lib/krb5/ccache/cc_kcm.c
index 2b9f82e..092ab7d 100644
--- a/src/lib/krb5/ccache/cc_kcm.c
+++ b/src/lib/krb5/ccache/cc_kcm.c
@@ -308,8 +308,9 @@ kcmio_unix_socket_write(krb5_context context, struct kcmio *io, void *request,
for (;;) {
ret = krb5int_net_writev(context, io->fd, sg, 2);
- if (ret < 0)
- ret = errno;
+ if (ret >= 0)
+ return 0;
+ ret = errno;
if (ret != EPIPE || reconnected)
return ret;
@@ -327,8 +328,6 @@ kcmio_unix_socket_write(krb5_context context, struct kcmio *io, void *request,
return ret;
reconnected = TRUE;
}
-
- return ret;
}
/* Read a KCM reply: 4-byte big-endian length, 4-byte big-endian status code,