const char *cse_gpo_name_to_guid_string(const char *name);
const char *cse_snapin_gpo_guid_string_to_name(const char *guid);
void dump_gp_ext(struct GP_EXT *gp_ext, int debuglevel);
-void dump_gpo(ADS_STRUCT *ads,
- TALLOC_CTX *mem_ctx,
- struct GROUP_POLICY_OBJECT *gpo,
+void dump_gpo(const struct GROUP_POLICY_OBJECT *gpo,
int debuglevel);
-void dump_gpo_list(ADS_STRUCT *ads,
- TALLOC_CTX *mem_ctx,
- struct GROUP_POLICY_OBJECT *gpo_list,
+void dump_gpo_list(const struct GROUP_POLICY_OBJECT *gpo_list,
int debuglevel);
-void dump_gplink(ADS_STRUCT *ads, TALLOC_CTX *mem_ctx, struct GP_LINK *gp_link);
+void dump_gplink(const struct GP_LINK *gp_link);
NTSTATUS gpo_process_a_gpo(TALLOC_CTX *mem_ctx,
const struct security_token *token,
struct registry_key *root_key,
if (ADS_ERR_OK(status)) {
if (DEBUGLEVEL >= 100) {
- dump_gplink(ads, mem_ctx, &gp_link);
+ dump_gplink(&gp_link);
}
status = add_gplink_to_gpo_list(ads, mem_ctx, gpo_list,
if (ADS_ERR_OK(status)) {
if (DEBUGLEVEL >= 100) {
- dump_gplink(ads, mem_ctx, &gp_link);
+ dump_gplink(&gp_link);
}
/* block inheritance from now on */
if (ADS_ERR_OK(status)) {
if (DEBUGLEVEL >= 100) {
- dump_gplink(ads, mem_ctx, &gp_link);
+ dump_gplink(&gp_link);
}
/* block inheritance from now on */
/****************************************************************
****************************************************************/
-void dump_gpo(ADS_STRUCT *ads,
- TALLOC_CTX *mem_ctx,
- struct GROUP_POLICY_OBJECT *gpo,
+void dump_gpo(const struct GROUP_POLICY_OBJECT *gpo,
int debuglevel)
{
int lvl = debuglevel;
+ TALLOC_CTX *frame = talloc_stackframe();
if (gpo == NULL) {
- return;
+ goto out;
}
DEBUG(lvl,("---------------------\n\n"));
struct GP_EXT *gp_ext = NULL;
- if (!ads_parse_gp_ext(mem_ctx, gpo->machine_extensions,
+ if (!ads_parse_gp_ext(frame, gpo->machine_extensions,
&gp_ext)) {
- return;
+ goto out;
}
dump_gp_ext(gp_ext, lvl);
}
struct GP_EXT *gp_ext = NULL;
- if (!ads_parse_gp_ext(mem_ctx, gpo->user_extensions,
+ if (!ads_parse_gp_ext(frame, gpo->user_extensions,
&gp_ext)) {
- return;
+ goto out;
}
dump_gp_ext(gp_ext, lvl);
}
NDR_PRINT_DEBUG(security_descriptor, gpo->security_descriptor);
}
+ out:
+ talloc_free(frame);
}
/****************************************************************
****************************************************************/
-void dump_gpo_list(ADS_STRUCT *ads,
- TALLOC_CTX *mem_ctx,
- struct GROUP_POLICY_OBJECT *gpo_list,
+void dump_gpo_list(const struct GROUP_POLICY_OBJECT *gpo_list,
int debuglevel)
{
- struct GROUP_POLICY_OBJECT *gpo = NULL;
+ const struct GROUP_POLICY_OBJECT *gpo = NULL;
for (gpo = gpo_list; gpo; gpo = gpo->next) {
- dump_gpo(ads, mem_ctx, gpo, debuglevel);
+ dump_gpo(gpo, debuglevel);
}
}
/****************************************************************
****************************************************************/
-void dump_gplink(ADS_STRUCT *ads, TALLOC_CTX *mem_ctx, struct GP_LINK *gp_link)
+void dump_gplink(const struct GP_LINK *gp_link)
{
- ADS_STATUS status;
int i;
int lvl = 10;
DEBUGADD(lvl,("GPO_LINK_OPT_DISABLED"));
}
DEBUGADD(lvl,("\n"));
-
- if (ads != NULL && mem_ctx != NULL) {
-
- struct GROUP_POLICY_OBJECT gpo;
-
- status = ads_get_gpo(ads, mem_ctx,
- gp_link->link_names[i],
- NULL, NULL, &gpo);
- if (!ADS_ERR_OK(status)) {
- DEBUG(lvl,("get gpo for %s failed: %s\n",
- gp_link->link_names[i],
- ads_errstr(status)));
- return;
- }
- dump_gpo(ads, mem_ctx, &gpo, lvl);
- }
}
}
for (gpo = gpo_list; gpo; gpo = gpo->next) {
- dump_gpo(ads, mem_ctx, gpo, 0);
+ dump_gpo(gpo, 0);
#if 0
char *server, *share, *nt_path, *unix_path;
for (gpo = read_list; gpo; gpo = gpo->next) {
- dump_gpo(ads, mem_ctx, gpo, 0);
+ dump_gpo(gpo, 0);
#if 0
char *server, *share, *nt_path, *unix_path;
goto out;
}
- dump_gpo(ads, mem_ctx, &gpo, 0);
+ dump_gpo(&gpo, 0);
}
out:
goto out;
}
- dump_gpo_list(ads, mem_ctx, gpo_list, 0);
+ dump_gpo_list(gpo_list, 0);
out:
ads_msgfree(ads, res);
goto out;
}
- dump_gplink(ads, mem_ctx, &gp_link);
+ dump_gplink(&gp_link);
out:
talloc_destroy(mem_ctx);
goto out;
}
- dump_gpo(ads, mem_ctx, &gpo, 1);
+ dump_gpo(&gpo, 1);
out:
talloc_destroy(mem_ctx);