#1238 Missing debug message if sdap_sudo_refresh_set_timer fails
Closed: Fixed None Opened 12 years ago by sgallagh.

214static void sdap_sudo_refresh_timeout(struct tevent_context *ev,
215                                      struct tevent_timer *te,
216                                      struct timeval tv, void *pvt)
217{
218    struct tevent_req *req = talloc_get_type(pvt, struct tevent_req);
219    struct sdap_sudo_refresh_ctx *refresh_ctx = NULL;
220    int delay;
221
222    refresh_ctx = tevent_req_callback_data(req, struct sdap_sudo_refresh_ctx);
223
224    delay = dp_opt_get_int(refresh_ctx->opts->basic, SDAP_SUDO_REFRESH_TIMEOUT);
At conditional (1): "debug_level & __debug_macro_newlevel" taking the true branch.
At conditional (2): "debug_timestamps" taking the true branch.
At conditional (3): "debug_microseconds" taking the true branch.
225    DEBUG(SSSDBG_CRIT_FAILURE, ("Refreshing SUDO rules timed out!"
226          " Timeout too small? (%ds)!\n", delay));
227
228    tv = tevent_timeval_current_ofs(delay, 0);
CID 12569: Unchecked return value (CHECKED_RETURN)Calling function "sdap_sudo_refresh_set_timer" without checking return value (as is done elsewhere 6 out of 7 times).
No check of the return value of "sdap_sudo_refresh_set_timer(refresh_ctx, tv)".
229    sdap_sudo_refresh_set_timer(refresh_ctx, tv);
230
231    talloc_zfree(req);
232}

Example of checking it properly:

207    tv = tevent_timeval_add(&tv, delay, 0);
Assigning: "ret" = return value from "sdap_sudo_refresh_set_timer(refresh_ctx, tv)".
208    ret = sdap_sudo_refresh_set_timer(refresh_ctx, tv);
"ret" has its value checked in "ret != 0".
209    if (ret != EOK) {
210        DEBUG(SSSDBG_CRIT_FAILURE, ("Error setting up SUDO refresh timer\n"));
211    }

Fields changed

milestone: NEEDS_TRIAGE => SSSD 1.9.0
rhbz: => 0

Fields changed

owner: somebody => pbrezina
patch: 0 => 1
status: new => assigned

Moving this to the 1.8.1 milestone since it's ready.

milestone: SSSD 1.9.0 => SSSD 1.8.1 (LTM)

Fixed by:
- 69aa2d8 (master)
- 45a407b (sssd-1-8)

resolution: => fixed
status: assigned => closed

Metadata Update from @sgallagh:
- Issue assigned to pbrezina
- Issue set to the milestone: SSSD 1.8.1 (LTM)

7 years ago

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

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.

Login to comment on this ticket.

Metadata