[1735] in Moira
Changes to WINAD.C
daemon@ATHENA.MIT.EDU (David E. Tanner)
Thu Jan 18 12:02:31 2001
Message-Id: <3.0.32.20010118120021.011aeb40@po14.mit.edu>
Date: Thu, 18 Jan 2001 12:00:23 -0500
To: moiradev@MIT.EDU
From: "David E. Tanner" <dtanner@MIT.EDU>
Mime-Version: 1.0
Content-Type: text/enriched; charset="us-ascii"
<smaller>A small change to winad.c for processing of user accounts that
should exist in the W2K AD but for some reason don't.
Index: winad.c
===================================================================
RCS file:
/afs/athena.mit.edu/astaff/project/moiradev/repository/moira/incremental/winad/winad.c,v
retrieving revision 1.5
diff -c -r1.5 winad.c
*** winad.c 2001/01/04 09:02:09 1.5
--- winad.c 2001/01/18 16:53:38
***************
*** 444,450 ****
callback_rc = 0;
if (rc = mr_query("get_list_info", 1, av, group_rename,
call_args))
{
! if (rc != LDAP_NO_SUCH_OBJECT)
{
critical_alert("AD incremental",
"Could not change list %s to %s : %s",
--- 444,450 ----
callback_rc = 0;
if (rc = mr_query("get_list_info", 1, av, group_rename,
call_args))
{
! if (callback_rc != LDAP_NO_SUCH_OBJECT)
{
critical_alert("AD incremental",
"Could not change list %s to %s : %s",
***************
*** 651,685 ****
if (rc = mr_query("get_user_account_by_login", 1, av,
user_update,
call_args))
{
! critical_alert("AD incremental",
! "Could not update user %s info : %s",
! before[U_NAME],
! error_message(rc));
}
- goto cleanup;
}
! com_err(whoami, 0, "Changing user %s to %s", before[U_NAME],
! after[U_NAME]);
! av[0] = after[U_NAME];
! call_args[0] = (char *)ldap_handle;
! call_args[1] = dn_path;
! call_args[2] = (char *)MEMBER_ACTIVATE;
! call_args[3] = before[U_NAME];
! sid_base = NULL;
! sid_ptr = &sid_base;
! callback_rc = 0;
! if (rc = mr_query("get_user_account_by_login", 1, av,
user_rename,
! call_args))
{
! if (rc != LDAP_NO_SUCH_OBJECT)
{
! critical_alert("AD incremental",
! "Could not change user %s to %s : %s",
! before[U_NAME],
! after[U_NAME], error_message(rc));
! goto cleanup;
}
- callback_rc = LDAP_NO_SUCH_OBJECT;
}
if (callback_rc != LDAP_NO_SUCH_OBJECT)
goto cleanup;
--- 651,690 ----
if (rc = mr_query("get_user_account_by_login", 1, av,
user_update,
call_args))
{
! if (callback_rc != LDAP_NO_SUCH_OBJECT)
! {
! critical_alert("AD incremental",
! "Could not update user %s info :
%s",
! before[U_NAME],
! error_message(rc));
! goto cleanup;
! }
}
}
! else
{
! com_err(whoami, 0, "Changing user %s to %s",
before[U_NAME],
! after[U_NAME]);
! av[0] = after[U_NAME];
! call_args[0] = (char *)ldap_handle;
! call_args[1] = dn_path;
! call_args[2] = (char *)MEMBER_ACTIVATE;
! call_args[3] = before[U_NAME];
! sid_base = NULL;
! sid_ptr = &sid_base;
! callback_rc = 0;
! if (rc = mr_query("get_user_account_by_login", 1, av,
user_rename,
! call_args))
{
! if (callback_rc != LDAP_NO_SUCH_OBJECT)
! {
! critical_alert("AD incremental",
! "Could not change user %s to %s :
%s",
! before[U_NAME],
! after[U_NAME], error_message(rc));
! goto cleanup;
! }
}
}
if (callback_rc != LDAP_NO_SUCH_OBJECT)
goto cleanup;
***************
*** 2004,2009 ****
--- 2009,2015 ----
critical_alert("AD incremental - user update",
"LDAP server unable to find user %s in AD.",
user_name);
+ callback_rc = LDAP_NO_SUCH_OBJECT;
goto cleanup;
}
strcpy(distinguished_name, group_base->dn);
</smaller>