#179 krb5 backend could fail with a short read
Closed: Fixed Opened by simo.

If read_pipe_done receives a short read (errno == EAGAIN/EINTR) the result is not handled properly.

if the amount of data read is less than the requested size we need to return and wait for the rest of the buffer.

so the read should be something like:

size = read(state->fd, &state->buf[state->len], talloc_get_size(state->buf) - state->len);

if (size > 0) {
state->len += size;
...


Fixed in 6cec00b7fe2aed71b8df21d2a0d97df8b448cc85

fixedin: => 0.6.0
resolution: => fixed
status: new => closed

Fields changed

rhbz: => 0

Metadata Update from @simo:
- Issue assigned to sbose
- Issue set to the milestone: SSSD 0.6.0

SSSD is moving from Pagure to Github. This means that new issues and pull requests
will be accepted only in SSSD's github repository.

This issue has been cloned to Github and is available here:
- https://github.com/SSSD/sssd/issues/1221

If you want to receive further updates on the issue, please navigate to the github issue
and click on subscribe button.

Thank you for understanding. We apologize for all inconvenience.

Metadata