Lines Matching defs:addop
350 struct mbof_add_operation *addop;
370 addop = talloc_zero(add_ctx, struct mbof_add_operation);
371 if (!addop) {
375 addop->add_ctx = add_ctx;
376 addop->parents = parents;
377 addop->entry_dn = entry_dn;
380 lastop->next = addop;
382 add_ctx->add_list = addop;
444 static int mbof_next_add(struct mbof_add_operation *addop);
447 static int mbof_add_operation(struct mbof_add_operation *addop);
640 static int mbof_next_add(struct mbof_add_operation *addop)
651 add_ctx = addop->add_ctx;
656 add_ctx->current_op = addop;
659 addop->entry_dn, LDB_SCOPE_BASE,
661 addop, mbof_next_add_callback,
673 struct mbof_add_operation *addop;
679 addop = talloc_get_type(req->context, struct mbof_add_operation);
680 add_ctx = addop->add_ctx;
697 if (addop->entry != NULL) {
700 ldb_dn_get_linearized(addop->entry_dn));
706 addop->entry = talloc_steal(addop, ares->message);
707 if (addop->entry == NULL) {
719 if (addop->entry == NULL) {
721 ldb_dn_get_linearized(addop->entry_dn));
724 ret = mbof_add_missing(add_ctx, addop->entry_dn);
752 ret = mbof_add_operation(addop);
767 static int mbof_add_operation(struct mbof_add_operation *addop)
784 add_ctx = addop->add_ctx;
794 addop->parents->num);
800 for (i = 0; i < addop->parents->num; i++) {
802 if (ldb_dn_compare(addop->parents->dns[i], addop->entry_dn) == 0) {
805 parents->dns[parents->num] = addop->parents->dns[i];
810 el = ldb_msg_find_element(addop->entry, DB_MEMBEROF);
813 tmp_ctx = talloc_new(addop);
842 talloc_free(addop->entry);
843 addop->entry = NULL;
845 if (addop->next) {
846 return mbof_next_add(addop->next);
863 el = ldb_msg_find_element(addop->entry, DB_MEMBER);
886 ret = entry_is_user_object(addop->entry);
890 name = ldb_msg_find_attr_as_string(addop->entry, DB_NAME, NULL);
917 ret = mbof_add_fill_ghop(add_ctx, addop->entry, parents);
923 talloc_free(addop->entry);
924 addop->entry = NULL;
927 msg = ldb_msg_new(addop);
930 msg->dn = addop->entry_dn;