libgpo: allow to pass down a list of deleted GPOs in gpo_process_gpo_list().
authorGünther Deschner <gd@samba.org>
Thu, 19 Dec 2013 16:29:10 +0000 (17:29 +0100)
committerAndreas Schneider <asn@samba.org>
Tue, 7 Jan 2014 15:59:39 +0000 (16:59 +0100)
Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
libgpo/gpo.h
libgpo/gpo_util.c
source3/utils/net_ads_gpo.c

index f32b7399986c4f3434b9d91f97f3bee357361602..4f856fd8f08e5fd081b174d2b77a4e837d7ebcaf 100644 (file)
@@ -228,7 +228,8 @@ void dump_gpo_list(const struct GROUP_POLICY_OBJECT *gpo_list,
 void dump_gplink(const struct GP_LINK *gp_link);
 NTSTATUS gpo_process_gpo_list(TALLOC_CTX *mem_ctx,
                              const struct security_token *token,
-                             struct GROUP_POLICY_OBJECT *gpo_list,
+                             const struct GROUP_POLICY_OBJECT *deleted_gpo_list,
+                             const struct GROUP_POLICY_OBJECT *changed_gpo_list,
                              const char *extensions_guid_filter,
                              uint32_t flags);
 NTSTATUS check_refresh_gpo(ADS_STRUCT *ads,
index b654d4ad58400d3d81760a69e42f922d59d217db..4d87eb3afca76eb42418cbad6bca9215343895b9 100644 (file)
@@ -427,7 +427,8 @@ bool gpo_get_gp_ext_from_gpo(TALLOC_CTX *mem_ctx,
 
 NTSTATUS gpo_process_gpo_list(TALLOC_CTX *mem_ctx,
                              const struct security_token *token,
-                             struct GROUP_POLICY_OBJECT *gpo_list,
+                             const struct GROUP_POLICY_OBJECT *deleted_gpo_list,
+                             const struct GROUP_POLICY_OBJECT *changed_gpo_list,
                              const char *extensions_guid_filter,
                              uint32_t flags)
 {
@@ -455,8 +456,8 @@ NTSTATUS gpo_process_gpo_list(TALLOC_CTX *mem_ctx,
 
        status = gpext_process_extension(mem_ctx,
                                         flags, token, root_key,
-                                        NULL,
-                                        gpo_list,
+                                        deleted_gpo_list,
+                                        changed_gpo_list,
                                         extensions_guid_filter);
        talloc_free(reg_ctx);
        talloc_free(root_key);
index b9b0a1422967d0cc6117a87bb722f424dadc0ad7..444e160561cea3b12aa040951b829b1441e78ed3 100644 (file)
@@ -433,7 +433,7 @@ static int net_ads_gpo_apply(struct net_context *c, int argc, const char **argv)
                goto out;
        }
 
-       status = ADS_ERROR_NT(gpo_process_gpo_list(mem_ctx, token, gpo_list,
+       status = ADS_ERROR_NT(gpo_process_gpo_list(mem_ctx, token, NULL, gpo_list,
                                                   filter, flags));
        if (!ADS_ERR_OK(status)) {
                d_printf("failed to process gpo list: %s\n",