diff options
| -rw-r--r-- | source3/lib/netapi/user.c | 16 | 
1 files changed, 12 insertions, 4 deletions
diff --git a/source3/lib/netapi/user.c b/source3/lib/netapi/user.c index 98c96ac450..2abc25d681 100644 --- a/source3/lib/netapi/user.c +++ b/source3/lib/netapi/user.c @@ -2787,15 +2787,23 @@ NTSTATUS add_GROUP_USERS_INFO_X_buffer(TALLOC_CTX *mem_ctx,  	switch (level) {  		case 0: -			u0.grui0_name = talloc_strdup(mem_ctx, group_name); -			NT_STATUS_HAVE_NO_MEMORY(u0.grui0_name); +			if (group_name) { +				u0.grui0_name = talloc_strdup(mem_ctx, group_name); +				NT_STATUS_HAVE_NO_MEMORY(u0.grui0_name); +			} else { +				u0.grui0_name = NULL; +			}  			ADD_TO_ARRAY(mem_ctx, struct GROUP_USERS_INFO_0, u0,  				     (struct GROUP_USERS_INFO_0 **)buffer, num_entries);  			break;  		case 1: -			u1.grui1_name = talloc_strdup(mem_ctx, group_name); -			NT_STATUS_HAVE_NO_MEMORY(u1.grui1_name); +			if (group_name) { +				u1.grui1_name = talloc_strdup(mem_ctx, group_name); +				NT_STATUS_HAVE_NO_MEMORY(u1.grui1_name); +			} else { +				u1.grui1_name = NULL; +			}  			u1.grui1_attributes = attributes;  | 
