summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
Diffstat (limited to 'source3')
-rw-r--r--source3/libnet/libnet_samsync_passdb.c47
1 files changed, 25 insertions, 22 deletions
diff --git a/source3/libnet/libnet_samsync_passdb.c b/source3/libnet/libnet_samsync_passdb.c
index 96731ac5f4..95e8448828 100644
--- a/source3/libnet/libnet_samsync_passdb.c
+++ b/source3/libnet/libnet_samsync_passdb.c
@@ -668,38 +668,40 @@ static NTSTATUS fetch_sam_entry(TALLOC_CTX *mem_ctx,
struct netr_DELTA_ENUM *r,
struct samsync_context *ctx)
{
- switch(r->delta_type) {
+ NTSTATUS status = NT_STATUS_NOT_IMPLEMENTED;
+
+ switch (r->delta_type) {
case NETR_DELTA_USER:
- fetch_account_info(mem_ctx,
- r->delta_id_union.rid,
- r->delta_union.user);
+ status = fetch_account_info(mem_ctx,
+ r->delta_id_union.rid,
+ r->delta_union.user);
break;
case NETR_DELTA_GROUP:
- fetch_group_info(mem_ctx,
- r->delta_id_union.rid,
- r->delta_union.group);
+ status = fetch_group_info(mem_ctx,
+ r->delta_id_union.rid,
+ r->delta_union.group);
break;
case NETR_DELTA_GROUP_MEMBER:
- fetch_group_mem_info(mem_ctx,
- r->delta_id_union.rid,
- r->delta_union.group_member);
+ status = fetch_group_mem_info(mem_ctx,
+ r->delta_id_union.rid,
+ r->delta_union.group_member);
break;
case NETR_DELTA_ALIAS:
- fetch_alias_info(mem_ctx,
- r->delta_id_union.rid,
- r->delta_union.alias,
- ctx->domain_sid);
+ status = fetch_alias_info(mem_ctx,
+ r->delta_id_union.rid,
+ r->delta_union.alias,
+ ctx->domain_sid);
break;
case NETR_DELTA_ALIAS_MEMBER:
- fetch_alias_mem(mem_ctx,
- r->delta_id_union.rid,
- r->delta_union.alias_member,
- ctx->domain_sid);
+ status = fetch_alias_mem(mem_ctx,
+ r->delta_id_union.rid,
+ r->delta_union.alias_member,
+ ctx->domain_sid);
break;
case NETR_DELTA_DOMAIN:
- fetch_domain_info(mem_ctx,
- r->delta_id_union.rid,
- r->delta_union.domain);
+ status = fetch_domain_info(mem_ctx,
+ r->delta_id_union.rid,
+ r->delta_union.domain);
break;
/* The following types are recognised but not handled */
case NETR_DELTA_RENAME_GROUP:
@@ -752,10 +754,11 @@ static NTSTATUS fetch_sam_entry(TALLOC_CTX *mem_ctx,
break;
default:
d_printf("Unknown delta record type %d\n", r->delta_type);
+ status = NT_STATUS_INVALID_PARAMETER;
break;
}
- return NT_STATUS_OK;
+ return status;
}
/****************************************************************