#521 Uninitialized use of 'ret' in krb5_auth_send() for root password reset attempt
Closed: Fixed Opened by sgallagh.

From Coverity:

  676struct tevent_req *krb5_auth_send(TALLOC_CTX *mem_ctx,
  677                                  struct tevent_context *ev,
  678                                  struct be_ctx *be_ctx,
  679                                  struct pam_data *pd,
  680                                  struct krb5_ctx *krb5_ctx)
  681{
  682    const char **attrs;
Declaring variable "ret" without initializer.
  683    int ret;
...
At conditional (2): switch case value "247" taking the true branch.
  708        case SSS_PAM_CHAUTHTOK_PRELIM:
At conditional (3): "state->pd->priv == 1" taking the true branch.
At conditional (4): "state->pd->authtok_size == 0U" taking the true branch.
  709            if (state->pd->priv == 1 && state->pd->authtok_size == 0) {
At conditional (5): "4 <= debug_level" taking the true branch.
At conditional (6): "debug_timestamps" taking the true branch.
  710                DEBUG(4, ("Password reset by root is not supported.\n"));
  711                state->pam_status = PAM_PERM_DENIED;
  712                state->dp_err = DP_ERR_OK;
  713                goto done;
  714            }
  715            break;
...
  775done:
Using uninitialized value "ret".
  776    if (ret == EOK) {
  777        tevent_req_done(req);
  778    } else {
  779        tevent_req_error(req, ret);
  780    }
  781    tevent_req_post(req, state->ev);
  782    return req;
  783}

In SSS_PAM_CHAUTHTOK_PRELIM:
If password reset by root occurs, ret is undefined in the 'done' label.


Fields changed

milestone: NEEDS_TRIAGE => SSSD 1.2.1

Fixed by 719f7be6150e5d37f644e61afac7e2af30955359

fixedin: => 1.2.1
keywords: => coverity
resolution: => fixed
status: new => closed

Fields changed

rhbz: => 0

Metadata Update from @sgallagh:
- Issue assigned to sbose
- Issue set to the milestone: SSSD 1.2.1

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/1563

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