Lines Matching refs:renew_tgt_ctx

34 struct renew_tgt_ctx {
156 static errno_t renew_all_tgts(struct renew_tgt_ctx *renew_tgt_ctx)
167 ret = hash_entries(renew_tgt_ctx->tgt_table, &count, &entries);
183 auth_data = talloc_zero(renew_tgt_ctx, struct auth_data);
197 auth_data->krb5_ctx = renew_tgt_ctx->krb5_ctx;
198 auth_data->be_ctx = renew_tgt_ctx->be_ctx;
199 auth_data->table = renew_tgt_ctx->tgt_table;
207 te = tevent_add_timer(renew_tgt_ctx->ev,
220 ret = hash_delete(renew_tgt_ctx->tgt_table, &entries[c].key);
233 static void renew_handler(struct renew_tgt_ctx *renew_tgt_ctx);
237 struct renew_tgt_ctx *renew_tgt_ctx = talloc_get_type(private_data,
238 struct renew_tgt_ctx);
240 talloc_zfree(renew_tgt_ctx->te);
245 struct renew_tgt_ctx *renew_tgt_ctx = talloc_get_type(private_data,
246 struct renew_tgt_ctx);
248 renew_handler(renew_tgt_ctx);
255 struct renew_tgt_ctx *renew_tgt_ctx = talloc_get_type(data,
256 struct renew_tgt_ctx);
259 renew_tgt_ctx->te = NULL;
261 renew_handler(renew_tgt_ctx);
264 static void renew_handler(struct renew_tgt_ctx *renew_tgt_ctx)
269 if (be_is_offline(renew_tgt_ctx->be_ctx)) {
274 ret = renew_all_tgts(renew_tgt_ctx);
279 talloc_zfree(renew_tgt_ctx);
283 if (renew_tgt_ctx->te != NULL) {
291 next = tevent_timeval_current_ofs(renew_tgt_ctx->timer_interval,
293 renew_tgt_ctx->te = tevent_add_timer(renew_tgt_ctx->ev, renew_tgt_ctx,
295 renew_tgt_ctx);
296 if (renew_tgt_ctx->te == NULL) {
299 talloc_zfree(renew_tgt_ctx);
319 static errno_t check_ccache_file(struct renew_tgt_ctx *renew_tgt_ctx,
370 ret = add_tgt_to_renew_table(renew_tgt_ctx->krb5_ctx, ccache_file,
384 static errno_t check_ccache_files(struct renew_tgt_ctx *renew_tgt_ctx)
406 base_dn = sysdb_base_dn(renew_tgt_ctx->be_ctx->domain->sysdb, tmp_ctx);
413 ret = sysdb_search_entry(tmp_ctx, renew_tgt_ctx->be_ctx->domain->sysdb, base_dn,
447 ret = find_or_guess_upn(tmp_ctx, msgs[c], renew_tgt_ctx->krb5_ctx,
448 renew_tgt_ctx->be_ctx->domain,
458 ret = check_ccache_file(renew_tgt_ctx, ccache_file, upn, user_name);
479 krb5_ctx->renew_tgt_ctx = talloc_zero(krb5_ctx, struct renew_tgt_ctx);
480 if (krb5_ctx->renew_tgt_ctx == NULL) {
485 ret = sss_hash_create_ex(krb5_ctx->renew_tgt_ctx, INITIAL_TGT_TABLE_SIZE,
486 &krb5_ctx->renew_tgt_ctx->tgt_table, 0, 0, 0, 0,
493 krb5_ctx->renew_tgt_ctx->be_ctx = be_ctx;
494 krb5_ctx->renew_tgt_ctx->krb5_ctx = krb5_ctx;
495 krb5_ctx->renew_tgt_ctx->ev = ev;
496 krb5_ctx->renew_tgt_ctx->timer_interval = renew_intv;
498 ret = check_ccache_files(krb5_ctx->renew_tgt_ctx);
504 next = tevent_timeval_current_ofs(krb5_ctx->renew_tgt_ctx->timer_interval,
506 krb5_ctx->renew_tgt_ctx->te = tevent_add_timer(ev, krb5_ctx->renew_tgt_ctx,
508 krb5_ctx->renew_tgt_ctx);
509 if (krb5_ctx->renew_tgt_ctx->te == NULL) {
517 ret = be_add_offline_cb(krb5_ctx->renew_tgt_ctx, be_ctx,
518 renew_tgt_offline_callback, krb5_ctx->renew_tgt_ctx,
526 ret = be_add_online_cb(krb5_ctx->renew_tgt_ctx, be_ctx,
527 renew_tgt_online_callback, krb5_ctx->renew_tgt_ctx,
538 talloc_zfree(krb5_ctx->renew_tgt_ctx);
551 if (krb5_ctx->renew_tgt_ctx == NULL) {
573 renew_data = talloc_zero(krb5_ctx->renew_tgt_ctx, struct renew_data);
615 ret = hash_enter(krb5_ctx->renew_tgt_ctx->tgt_table, &key, &value);