Lines Matching defs:op
308 ldap_dict_lookup_callback(struct ldap_result *result, struct dict_ldap_op *op)
310 pool_t pool = op->pool;
314 op->dict->pending--;
317 op->res.ret = -1;
318 op->res.error = ldap_result_get_error(result);
323 if (op->dict->set->debug > 0)
326 const char *const *values = ldap_entry_get_attribute(entry, op->map->value_attribute);
330 if (op->dict->set->debug > 0)
331 i_debug("ldap_dict_lookup_callback got attribute %s", op->map->value_attribute);
332 op->res.ret = 1;
333 new_values = p_new(op->pool, const char *, 2);
334 new_values[0] = p_strdup(op->pool, values[0]);
335 op->res.values = new_values;
336 op->res.value = op->res.values[0];
338 if (op->dict->set->debug > 0)
339 i_debug("ldap_dict_lookup_callback dit not get attribute %s", op->map->value_attribute);
340 op->res.value = NULL;
345 op->callback(&op->res, op->callback_ctx);
417 struct dict_ldap_op *op;
422 op = p_new(oppool, struct dict_ldap_op, 1);
423 op->pool = oppool;
424 op->dict = ctx;
425 op->callback = callback;
426 op->callback_ctx = context;
427 op->txid = ctx->last_txid++;
436 op->map = map;
443 op->res.error = error;
444 callback(&op->res, context);
451 ldap_search_start(ctx->client, &input, ldap_dict_lookup_callback, op);
453 op->res.error = "no such key";
454 callback(&op->res, context);