diff options
Diffstat (limited to 'source3/lib/netapi/user.c')
-rw-r--r-- | source3/lib/netapi/user.c | 83 |
1 files changed, 40 insertions, 43 deletions
diff --git a/source3/lib/netapi/user.c b/source3/lib/netapi/user.c index 1ad4a6f282..c5f7b3722a 100644 --- a/source3/lib/netapi/user.c +++ b/source3/lib/netapi/user.c @@ -52,9 +52,6 @@ static void convert_USER_INFO_X_to_samr_user_info21(struct USER_INFO_X *infoX, if (infoX->usriX_flags) { fields_present |= SAMR_FIELD_ACCT_FLAGS; } - if (infoX->usriX_name) { - fields_present |= SAMR_FIELD_FULL_NAME; - } if (infoX->usriX_home_dir) { fields_present |= SAMR_FIELD_HOME_DIRECTORY; } @@ -313,7 +310,7 @@ static NTSTATUS set_user_info_USER_INFO_X(TALLOC_CTX *ctx, session_key, &user_info.info25.password); - status = rpccli_samr_SetUserInfo2(pipe_cli, ctx, + status = rpccli_samr_SetUserInfo2(pipe_cli, talloc_tos(), user_handle, 25, &user_info); @@ -326,7 +323,7 @@ static NTSTATUS set_user_info_USER_INFO_X(TALLOC_CTX *ctx, session_key, &user_info.info23.password); - status = rpccli_samr_SetUserInfo2(pipe_cli, ctx, + status = rpccli_samr_SetUserInfo2(pipe_cli, talloc_tos(), user_handle, 23, &user_info); @@ -335,7 +332,7 @@ static NTSTATUS set_user_info_USER_INFO_X(TALLOC_CTX *ctx, user_info.info21 = info21; - status = rpccli_samr_SetUserInfo(pipe_cli, ctx, + status = rpccli_samr_SetUserInfo(pipe_cli, talloc_tos(), user_handle, 21, &user_info); @@ -409,7 +406,7 @@ WERROR NetUserAdd_r(struct libnetapi_ctx *ctx, init_lsa_String(&lsa_account_name, uX.usriX_name); - status = rpccli_samr_CreateUser2(pipe_cli, ctx, + status = rpccli_samr_CreateUser2(pipe_cli, talloc_tos(), &domain_handle, &lsa_account_name, ACB_NORMAL, @@ -426,7 +423,7 @@ WERROR NetUserAdd_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_QueryUserInfo(pipe_cli, ctx, + status = rpccli_samr_QueryUserInfo(pipe_cli, talloc_tos(), &user_handle, 16, &user_info); @@ -440,7 +437,7 @@ WERROR NetUserAdd_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_GetUserPwInfo(pipe_cli, ctx, + status = rpccli_samr_GetUserPwInfo(pipe_cli, talloc_tos(), &user_handle, &pw_info); if (!NT_STATUS_IS_OK(status)) { @@ -463,12 +460,12 @@ WERROR NetUserAdd_r(struct libnetapi_ctx *ctx, goto done; failed: - rpccli_samr_DeleteUser(pipe_cli, ctx, + rpccli_samr_DeleteUser(pipe_cli, talloc_tos(), &user_handle); done: if (is_valid_policy_hnd(&user_handle) && pipe_cli) { - rpccli_samr_Close(pipe_cli, ctx, &user_handle); + rpccli_samr_Close(pipe_cli, talloc_tos(), &user_handle); } if (ctx->disable_policy_handle_cache) { @@ -527,7 +524,7 @@ WERROR NetUserDel_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_OpenDomain(pipe_cli, ctx, + status = rpccli_samr_OpenDomain(pipe_cli, talloc_tos(), &connect_handle, SAMR_DOMAIN_ACCESS_OPEN_ACCOUNT, CONST_DISCARD(DOM_SID *, &global_sid_Builtin), @@ -539,7 +536,7 @@ WERROR NetUserDel_r(struct libnetapi_ctx *ctx, init_lsa_String(&lsa_account_name, r->in.user_name); - status = rpccli_samr_LookupNames(pipe_cli, ctx, + status = rpccli_samr_LookupNames(pipe_cli, talloc_tos(), &domain_handle, 1, &lsa_account_name, @@ -550,7 +547,7 @@ WERROR NetUserDel_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_OpenUser(pipe_cli, ctx, + status = rpccli_samr_OpenUser(pipe_cli, talloc_tos(), &domain_handle, SEC_STD_DELETE, user_rids.ids[0], @@ -562,7 +559,7 @@ WERROR NetUserDel_r(struct libnetapi_ctx *ctx, sid_compose(&user_sid, domain_sid, user_rids.ids[0]); - status = rpccli_samr_RemoveMemberFromForeignDomain(pipe_cli, ctx, + status = rpccli_samr_RemoveMemberFromForeignDomain(pipe_cli, talloc_tos(), &builtin_handle, &user_sid); if (!NT_STATUS_IS_OK(status)) { @@ -570,7 +567,7 @@ WERROR NetUserDel_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_DeleteUser(pipe_cli, ctx, + status = rpccli_samr_DeleteUser(pipe_cli, talloc_tos(), &user_handle); if (!NT_STATUS_IS_OK(status)) { werr = ntstatus_to_werror(status); @@ -581,7 +578,7 @@ WERROR NetUserDel_r(struct libnetapi_ctx *ctx, done: if (is_valid_policy_hnd(&user_handle)) { - rpccli_samr_Close(pipe_cli, ctx, &user_handle); + rpccli_samr_Close(pipe_cli, talloc_tos(), &user_handle); } if (ctx->disable_policy_handle_cache) { @@ -1671,7 +1668,7 @@ WERROR NetUserGetInfo_r(struct libnetapi_ctx *ctx, init_lsa_String(&lsa_account_name, r->in.user_name); - status = rpccli_samr_LookupNames(pipe_cli, ctx, + status = rpccli_samr_LookupNames(pipe_cli, talloc_tos(), &domain_handle, 1, &lsa_account_name, @@ -1698,7 +1695,7 @@ WERROR NetUserGetInfo_r(struct libnetapi_ctx *ctx, done: if (is_valid_policy_hnd(&user_handle) && pipe_cli) { - rpccli_samr_Close(pipe_cli, ctx, &user_handle); + rpccli_samr_Close(pipe_cli, talloc_tos(), &user_handle); } if (ctx->disable_policy_handle_cache) { @@ -1826,7 +1823,7 @@ WERROR NetUserSetInfo_r(struct libnetapi_ctx *ctx, init_lsa_String(&lsa_account_name, r->in.user_name); - status = rpccli_samr_LookupNames(pipe_cli, ctx, + status = rpccli_samr_LookupNames(pipe_cli, talloc_tos(), &domain_handle, 1, &lsa_account_name, @@ -1837,7 +1834,7 @@ WERROR NetUserSetInfo_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_OpenUser(pipe_cli, ctx, + status = rpccli_samr_OpenUser(pipe_cli, talloc_tos(), &domain_handle, user_mask, user_rids.ids[0], @@ -1866,7 +1863,7 @@ WERROR NetUserSetInfo_r(struct libnetapi_ctx *ctx, done: if (is_valid_policy_hnd(&user_handle) && pipe_cli) { - rpccli_samr_Close(pipe_cli, ctx, &user_handle); + rpccli_samr_Close(pipe_cli, talloc_tos(), &user_handle); } if (ctx->disable_policy_handle_cache) { @@ -2845,7 +2842,7 @@ WERROR NetUserGetGroups_r(struct libnetapi_ctx *ctx, init_lsa_String(&lsa_account_name, r->in.user_name); - status = rpccli_samr_LookupNames(pipe_cli, ctx, + status = rpccli_samr_LookupNames(pipe_cli, talloc_tos(), &domain_handle, 1, &lsa_account_name, @@ -2856,7 +2853,7 @@ WERROR NetUserGetGroups_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_OpenUser(pipe_cli, ctx, + status = rpccli_samr_OpenUser(pipe_cli, talloc_tos(), &domain_handle, SAMR_USER_ACCESS_GET_GROUPS, user_rids.ids[0], @@ -2866,7 +2863,7 @@ WERROR NetUserGetGroups_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_GetGroupsForUser(pipe_cli, ctx, + status = rpccli_samr_GetGroupsForUser(pipe_cli, talloc_tos(), &user_handle, &rid_array); if (!NT_STATUS_IS_OK(status)) { @@ -2884,7 +2881,7 @@ WERROR NetUserGetGroups_r(struct libnetapi_ctx *ctx, rids[i] = rid_array->rids[i].rid; } - status = rpccli_samr_LookupRids(pipe_cli, ctx, + status = rpccli_samr_LookupRids(pipe_cli, talloc_tos(), &domain_handle, rid_array->count, rids, @@ -2996,7 +2993,7 @@ WERROR NetUserSetGroups_r(struct libnetapi_ctx *ctx, init_lsa_String(&lsa_account_name, r->in.user_name); - status = rpccli_samr_LookupNames(pipe_cli, ctx, + status = rpccli_samr_LookupNames(pipe_cli, talloc_tos(), &domain_handle, 1, &lsa_account_name, @@ -3007,7 +3004,7 @@ WERROR NetUserSetGroups_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_OpenUser(pipe_cli, ctx, + status = rpccli_samr_OpenUser(pipe_cli, talloc_tos(), &domain_handle, SAMR_USER_ACCESS_GET_GROUPS, user_rids.ids[0], @@ -3046,7 +3043,7 @@ WERROR NetUserSetGroups_r(struct libnetapi_ctx *ctx, } } - status = rpccli_samr_LookupNames(pipe_cli, ctx, + status = rpccli_samr_LookupNames(pipe_cli, talloc_tos(), &domain_handle, r->in.num_entries, lsa_names, @@ -3060,7 +3057,7 @@ WERROR NetUserSetGroups_r(struct libnetapi_ctx *ctx, member_rids = group_rids.ids; num_member_rids = group_rids.count; - status = rpccli_samr_GetGroupsForUser(pipe_cli, ctx, + status = rpccli_samr_GetGroupsForUser(pipe_cli, talloc_tos(), &user_handle, &rid_array); if (!NT_STATUS_IS_OK(status)) { @@ -3111,7 +3108,7 @@ WERROR NetUserSetGroups_r(struct libnetapi_ctx *ctx, /* add list */ for (i=0; i < num_add_rids; i++) { - status = rpccli_samr_OpenGroup(pipe_cli, ctx, + status = rpccli_samr_OpenGroup(pipe_cli, talloc_tos(), &domain_handle, SAMR_GROUP_ACCESS_ADD_MEMBER, add_rids[i], @@ -3121,7 +3118,7 @@ WERROR NetUserSetGroups_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_AddGroupMember(pipe_cli, ctx, + status = rpccli_samr_AddGroupMember(pipe_cli, talloc_tos(), &group_handle, user_rids.ids[0], 7 /* ? */); @@ -3131,14 +3128,14 @@ WERROR NetUserSetGroups_r(struct libnetapi_ctx *ctx, } if (is_valid_policy_hnd(&group_handle)) { - rpccli_samr_Close(pipe_cli, ctx, &group_handle); + rpccli_samr_Close(pipe_cli, talloc_tos(), &group_handle); } } /* del list */ for (i=0; i < num_del_rids; i++) { - status = rpccli_samr_OpenGroup(pipe_cli, ctx, + status = rpccli_samr_OpenGroup(pipe_cli, talloc_tos(), &domain_handle, SAMR_GROUP_ACCESS_REMOVE_MEMBER, del_rids[i], @@ -3148,7 +3145,7 @@ WERROR NetUserSetGroups_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_DeleteGroupMember(pipe_cli, ctx, + status = rpccli_samr_DeleteGroupMember(pipe_cli, talloc_tos(), &group_handle, user_rids.ids[0]); if (!NT_STATUS_IS_OK(status)) { @@ -3157,7 +3154,7 @@ WERROR NetUserSetGroups_r(struct libnetapi_ctx *ctx, } if (is_valid_policy_hnd(&group_handle)) { - rpccli_samr_Close(pipe_cli, ctx, &group_handle); + rpccli_samr_Close(pipe_cli, talloc_tos(), &group_handle); } } @@ -3165,7 +3162,7 @@ WERROR NetUserSetGroups_r(struct libnetapi_ctx *ctx, done: if (is_valid_policy_hnd(&group_handle)) { - rpccli_samr_Close(pipe_cli, ctx, &group_handle); + rpccli_samr_Close(pipe_cli, talloc_tos(), &group_handle); } if (ctx->disable_policy_handle_cache) { @@ -3290,7 +3287,7 @@ WERROR NetUserGetLocalGroups_r(struct libnetapi_ctx *ctx, init_lsa_String(&lsa_account_name, r->in.user_name); - status = rpccli_samr_LookupNames(pipe_cli, ctx, + status = rpccli_samr_LookupNames(pipe_cli, talloc_tos(), &domain_handle, 1, &lsa_account_name, @@ -3301,7 +3298,7 @@ WERROR NetUserGetLocalGroups_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_OpenUser(pipe_cli, ctx, + status = rpccli_samr_OpenUser(pipe_cli, talloc_tos(), &domain_handle, SAMR_USER_ACCESS_GET_GROUPS, user_rids.ids[0], @@ -3311,7 +3308,7 @@ WERROR NetUserGetLocalGroups_r(struct libnetapi_ctx *ctx, goto done; } - status = rpccli_samr_GetGroupsForUser(pipe_cli, ctx, + status = rpccli_samr_GetGroupsForUser(pipe_cli, talloc_tos(), &user_handle, &rid_array); if (!NT_STATUS_IS_OK(status)) { @@ -3352,7 +3349,7 @@ WERROR NetUserGetLocalGroups_r(struct libnetapi_ctx *ctx, } } - status = rpccli_samr_GetAliasMembership(pipe_cli, ctx, + status = rpccli_samr_GetAliasMembership(pipe_cli, talloc_tos(), &domain_handle, &sid_array, &domain_rids); @@ -3369,7 +3366,7 @@ WERROR NetUserGetLocalGroups_r(struct libnetapi_ctx *ctx, } } - status = rpccli_samr_GetAliasMembership(pipe_cli, ctx, + status = rpccli_samr_GetAliasMembership(pipe_cli, talloc_tos(), &builtin_handle, &sid_array, &builtin_rids); @@ -3386,7 +3383,7 @@ WERROR NetUserGetLocalGroups_r(struct libnetapi_ctx *ctx, } } - status = rpccli_samr_LookupRids(pipe_cli, ctx, + status = rpccli_samr_LookupRids(pipe_cli, talloc_tos(), &builtin_handle, num_rids, rids, |