r8789: Send new monitor messages from userdel routine.
authorRafal Szczesniak <mimir@samba.org>
Tue, 26 Jul 2005 23:03:37 +0000 (23:03 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:30:05 +0000 (13:30 -0500)
rafal
(This used to be commit eaaefa374ce11ab5dc3738bea046d33ed879fc4c)

source4/libnet/userman.c

index 1a40b7435286aaa15bd6283c21958e7a87f6f2ad..a3c1eaf17aed373447be6aabc284b8efa2938a55 100644 (file)
@@ -29,6 +29,7 @@
 #include "librpc/gen_ndr/ndr_samr.h"
 #include "libnet/composite.h"
 #include "libnet/userman.h"
+#include "libnet/userinfo.h"
 
 /*
  * Composite user add function
@@ -303,16 +304,38 @@ static void userdel_handler(struct rpc_request *req)
        struct composite_context *c = req->async.private;
        struct userdel_state *s = talloc_get_type(c->private, struct userdel_state);
        struct monitor_msg msg;
+       struct msg_rpc_lookup_name *msg_lookup;
+       struct msg_rpc_open_user *msg_open;
        
        switch (s->stage) {
        case USERDEL_LOOKUP:
                c->status = userdel_lookup(c, s);
+
+               msg.type = rpc_lookup_name;
+               msg_lookup = talloc(s, struct msg_rpc_lookup_name);
+               msg_lookup->rid = s->lookupname.out.rids.ids;
+               msg_lookup->count = s->lookupname.out.rids.count;
+               msg.data = (void*)msg_lookup;
+               msg.data_size = sizeof(*msg_lookup);
                break;
+
        case USERDEL_OPEN:
                c->status = userdel_open(c, s);
+
+               msg.type = rpc_open_user;
+               msg_open = talloc(s, struct msg_rpc_open_user);
+               msg_open->rid = s->openuser.in.rid;
+               msg_open->access_mask = s->openuser.in.rid;
+               msg.data = (void*)msg_open;
+               msg.data_size = sizeof(*msg_open);
                break;
+
        case USERDEL_DELETE:
                c->status = userdel_delete(c, s);
+               
+               msg.type = rpc_delete_user;
+               msg.data = NULL;
+               msg.data_size = 0;
                break;
        }