#726 Uninitialized value error in sdap_account_expired_shadow
Closed: Fixed Opened by sgallagh.

  274static errno_t sdap_account_expired_shadow(const char *username,
  275                                           struct ldb_message *user_entry,
  276                                           int *pam_status)
  277{
  278    int ret;
  279    const char *val;
Declaring variable "sp_expire" without initializer.
  280    long sp_expire;
  281    long today;
  282
At conditional (1): "6 <= debug_level" taking the true branch.
At conditional (2): "debug_timestamps" taking the true branch.
  283    DEBUG(6, ("Performing access shadow check for user [%s]\n", username));
  284
  285    val = ldb_msg_find_attr_as_string(user_entry, SYSDB_SHADOWPW_EXPIRE, NULL);
At conditional (3): "val == NULL" taking the false branch.
  286    if (val == NULL) {
  287        DEBUG(3, ("Shadow expire attribute not found. "
  288                  "Access will be granted.\n"));
  289        *pam_status = PAM_SUCCESS;
  290        return EOK;
  291    }
Using uninitialized value "sp_expire" when calling "string_to_shadowpw_days". [show details]
  292    ret = string_to_shadowpw_days(val, &sp_expire);

The check
if (*d < -1) {

Looks wrong in string_to_shadowpw_days()


Fields changed

milestone: NEEDS_TRIAGE => SSSD 1.5.0

Fixed by 42165bd9ada160e68ab0dbdeb21ed397486aa830

coverity: => 10022
resolution: => fixed
status: new => closed

Fields changed

rhbz: => 0

Metadata Update from @sgallagh:
- Issue assigned to sbose
- Issue set to the milestone: SSSD 1.5.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/1768

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