diff options
author | Milind Changire <mchangir@redhat.com> | 2018-08-27 11:21:24 +0530 |
---|---|---|
committer | jiffin tony Thottan <jthottan@redhat.com> | 2018-09-06 15:59:24 +0000 |
commit | 3ccad2fe9c637a1186d091f6d2395bf9a85b7ad5 (patch) | |
tree | 296854b41b4fb3a1bec1d3f46fbcb07b598696d5 /xlators/protocol/server/src/server.c | |
parent | 3898f8e35be7c59b753d120e3878af5ba59cdaaf (diff) |
rpc: handle EAGAIN when SSL_ERROR_SYSCALL is returned
Problem:
A return value of ENODATA was forcibly returned in the case where
SSL_get_error(r) returned SSL_ERROR_SYSCALL. Sometimes SSL_ERROR_SYSCALL
is a transient error which is identified by setting errno to EAGAIN.
EAGAIN is not a fatal error and indicates that the syscall needs to be
retried.
Solution:
Bubble up the errno in case SSL_get_error(r) returns SSL_ERROR_SYSCALL
and let the upper layers handle it appropriately.
fixes: bz#1622405
Change-Id: I76eff278378930ee79abbf9fa267a7e77356eed6
BUG: 1622405
Signed-off-by: Milind Changire <mchangir@redhat.com>
Diffstat (limited to 'xlators/protocol/server/src/server.c')
0 files changed, 0 insertions, 0 deletions