s4-rpc_server/drsuapi: Ensure logs show DN for replicated objects, not (null)
authorAndrew Bartlett <abartlet@samba.org>
Wed, 28 Jun 2023 03:57:47 +0000 (15:57 +1200)
committerJule Anger <janger@samba.org>
Mon, 21 Aug 2023 07:40:17 +0000 (07:40 +0000)
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15407
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15401

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
(cherry picked from commit 17359afa627a3086ec8d6862f007a3479574a8b4)

source4/rpc_server/drsuapi/getncchanges.c

index f932cb03131f5b1b9e3ae6c95a26c372476b36e4..448217c03d672686263cc7982d9d507fab55c0e6 100644 (file)
@@ -3567,7 +3567,15 @@ allowed:
                        getncchanges_chunk_add_objects(repl_chunk, new_objs);
 
                        talloc_free(getnc_state->last_dn);
-                       getnc_state->last_dn = talloc_move(getnc_state, &msg->dn);
+                       /*
+                        * talloc_steal() as we still need msg->dn to
+                        * be a valid pointer for the log on the next
+                        * line.
+                        *
+                        * msg only remains in scope for the next 25
+                        * lines or so anyway.
+                        */
+                       getnc_state->last_dn = talloc_steal(getnc_state, msg->dn);
                }
 
                DEBUG(8,(__location__ ": %s object %s new tmp_highest_usn=%" PRIu64 "\n",