[SCM] Samba Shared Repository - branch v3-6-test updated
Günther Deschner
gd at samba.org
Tue Feb 1 17:49:34 MST 2011
The branch, v3-6-test has been updated
via 75493e6 s3-net: prefer dcerpc_samr_X functions in rpc_trustdom_list.
via 3dea5be s3-net: prefer dcerpc_samr_X functions in rpc_trustdom_del_internals.
via d8ab6bf s3-net: prefer dcerpc_samr_X functions in rpc_trustdom_add_internals.
via 01df26f s3-net: prefer dcerpc_samr_X functions in rpc_aliaslist_internals.
via ee56b19 s3-net: prefer dcerpc_samr_X functions in rpc_fetch_domain_aliases.
via 26cb555 s3-net: prefer dcerpc_samr_X functions in rpc_group_members_internals.
via 4866076 s3-net: prefer dcerpc_samr_X functions in rpc_list_alias_members.
via 613fa68 s3-net: prefer dcerpc_samr_X functions in rpc_list_group_members.
via 3e952b1 s3-net: prefer dcerpc_samr_X functions in rpc_group_list_internals.
via dfcbade s3-net: prefer dcerpc_samr_X functions in rpc_del_aliasmem.
via e75826b s3-net: prefer dcerpc_samr_X functions in rpc_del_groupmem.
via 738202d s3-net: prefer dcerpc_samr_X functions in rpc_add_aliasmem.
via b04f5f3 s3-net: prefer dcerpc_samr_X functions in rpc_add_groupmem.
via b2f3f9d s3-net: prefer dcerpc_samr_X functions in rpc_group_delete_internals.
via db91b4c s3-net: prefer dcerpc_samr_X functions in rpc_sh_user_flag_edit_internals.
via cf32f14 s3-net: prefer dcerpc_samr_X functions in rpc_sh_user_str_edit_internals.
via c9f20cc s3-net: prefer dcerpc_samr_X functions in rpc_sh_user_show_internals.
via c004fdc s3-net: prefer dcerpc_samr_X functions in rpc_sh_handle_user.
via 6f4cd79 s3-net: prefer dcerpc_samr_X functions in rpc_info_internals.
via a067748 s3-net: prefer dcerpc_samr_X functions in net_rpc_sh_acct.c.
via 2fb2c5c s3-waf: fix the build after linux netlink changes.
from 743e887 s3: Fix the build on sles8
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test
- Log -----------------------------------------------------------------
commit 75493e6f5085410ac08b995db3b4dcccd7ae353d
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 12:10:02 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_trustdom_list.
Guenther
Autobuild-User: Günther Deschner <gd at samba.org>
Autobuild-Date: Wed Feb 2 00:21:19 CET 2011 on sn-devel-104
(cherry picked from commit a19c1cbb8d74307e05cba379903c739e7abc0943)
commit 3dea5be68d1c2799cff38c5427ed9437012e3457
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 12:08:02 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_trustdom_del_internals.
Guenther
(cherry picked from commit c7b1432b6eeba79aa8cfe22f68c983cd2532ac5f)
commit d8ab6bf98d911f016be930a72a12a1ac23564b31
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 12:06:42 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_trustdom_add_internals.
Guenther
(cherry picked from commit 95ee07d8abbd7d487003d3b07e67cbcc7e0816c5)
commit 01df26f716c1f0dd3354b69a770c5948c0b2d87b
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 12:05:38 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_aliaslist_internals.
Guenther
(cherry picked from commit 49f08d1d7cd9a8bd9e7757ec2575175b79255e14)
commit ee56b1942b7d8ac499fbc71f4ec340cd1c8a58dd
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 12:04:56 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_fetch_domain_aliases.
Guenther
(cherry picked from commit 37f2f518bed220a83025884e4b345ba2b0a08dd6)
commit 26cb5555b38a91e17a3beecebf50b323873c47fc
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 12:02:53 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_group_members_internals.
Guenther
(cherry picked from commit bf10bbc074decbdffe9f094cdf6a7ec859dd708e)
commit 48660763c9b5557bb354bd31ab489819e80926e3
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 12:01:35 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_list_alias_members.
Guenther
(cherry picked from commit 20edb2d48bc0b7c4d4d44baf491480838d1e38ba)
commit 613fa6888635b4ee3f2e8c378f611f4cb5f9387c
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 12:00:09 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_list_group_members.
Guenther
(cherry picked from commit 2a63433e942a8b75c27291fba6d6c230be020b09)
commit 3e952b164f25322a735c1761dc302a11fb2410ee
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 11:59:16 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_group_list_internals.
Guenther
(cherry picked from commit d280a52fdd04a02d68525f341ede4d39534f0b4c)
commit dfcbade483be28e0fb158a7489425a0f20039c13
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 11:57:33 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_del_aliasmem.
Guenther
(cherry picked from commit 84e3d14f7a1cc9a0d03235a95a2813cb54947ded)
commit e75826bc4552fea7aeaf81e64594e61102cd8564
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 11:56:52 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_del_groupmem.
Guenther
(cherry picked from commit b9b2325f4566423f67b93309b47401d992257c38)
commit 738202dd2e42ebde20dd393e65c87e31d51c4b56
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 11:56:12 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_add_aliasmem.
Guenther
(cherry picked from commit 55e042a4f2689ecc9c78933792047b6426950662)
commit b04f5f3ed09ea15cf267ada61c2345a66430521a
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 11:44:42 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_add_groupmem.
Guenther
(cherry picked from commit f8147fbb149574023d6e0ed3662b0a0a43f4bbb9)
commit b2f3f9dce8d83c6b5e0a298d8f17bae2fd5cbfba
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 11:43:15 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_group_delete_internals.
Guenther
(cherry picked from commit e14c214ab38024b37e460a1160f11ddfbef5d3c6)
commit db91b4c158f3f8274452b1201ea7b27722f1bb13
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 11:38:53 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_sh_user_flag_edit_internals.
Guenther
(cherry picked from commit 54b74c781df6d297043366827af7ea283ee31da0)
commit cf32f14c182b51ba89f396885610efcf30e95267
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 11:37:52 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_sh_user_str_edit_internals.
Guenther
(cherry picked from commit 1d3b3780012b15b6287cb5f649680ad3eff0e8dc)
commit c9f20cca247e49f46442ab60bb8bfab23185717b
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 11:36:48 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_sh_user_show_internals.
Guenther
(cherry picked from commit a87a9fc9ce68438526d5146feab04986c719f11b)
commit c004fdc27586cb7d664fde9bd43b53c393d0f458
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 11:35:50 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_sh_handle_user.
Guenther
(cherry picked from commit 021e0b4cdaf430e55e84a8b26fe1eb3d1edd88b7)
commit 6f4cd791ff264b3d9ccacc1ef6b70677ac22599c
Author: Günther Deschner <gd at samba.org>
Date: Tue Jan 18 11:34:33 2011 +0100
s3-net: prefer dcerpc_samr_X functions in rpc_info_internals.
Guenther
(cherry picked from commit f140e892f65f6d3492f5f36db081ad425a86afd8)
commit a06774824327d2be62d15fbb9a81cd55eaf16204
Author: Günther Deschner <gd at samba.org>
Date: Mon Jan 17 18:16:06 2011 +0100
s3-net: prefer dcerpc_samr_X functions in net_rpc_sh_acct.c.
Guenther
(cherry picked from commit e3aafb2a7f68ce0827f424e92c85434d28f5d906)
commit 2fb2c5c480c9f036aadb614d2efce0ce37c9c974
Author: Günther Deschner <gd at samba.org>
Date: Tue Feb 1 19:22:04 2011 +0100
s3-waf: fix the build after linux netlink changes.
Volker, please check.
Guenther
Autobuild-User: Günther Deschner <gd at samba.org>
Autobuild-Date: Tue Feb 1 23:21:50 CET 2011 on sn-devel-104
(cherry picked from commit fbbe321d19d0774bf141eddf6dea86e8ae2cf64a)
-----------------------------------------------------------------------
Summary of changes:
source3/utils/net_rpc.c | 1022 ++++++++++++++++++++++++++++-----------
source3/utils/net_rpc_sh_acct.c | 82 +++-
source3/wscript | 14 +
source3/wscript_build | 2 +
4 files changed, 808 insertions(+), 312 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source3/utils/net_rpc.c b/source3/utils/net_rpc.c
index 158e4d5..090aa34 100644
--- a/source3/utils/net_rpc.c
+++ b/source3/utils/net_rpc.c
@@ -23,7 +23,7 @@
#include "includes.h"
#include "utils/net.h"
#include "../libcli/auth/libcli_auth.h"
-#include "../librpc/gen_ndr/cli_samr.h"
+#include "../librpc/gen_ndr/ndr_samr_c.h"
#include "rpc_client/cli_samr.h"
#include "rpc_client/init_samr.h"
#include "../librpc/gen_ndr/cli_lsa.h"
@@ -505,39 +505,60 @@ NTSTATUS rpc_info_internals(struct net_context *c,
const char **argv)
{
struct policy_handle connect_pol, domain_pol;
- NTSTATUS result = NT_STATUS_UNSUCCESSFUL;
+ NTSTATUS status, result;
union samr_DomainInfo *info = NULL;
fstring sid_str;
+ struct dcerpc_binding_handle *b = pipe_hnd->binding_handle;
sid_to_fstring(sid_str, domain_sid);
/* Get sam policy handle */
- result = rpccli_samr_Connect2(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_Connect2(b, mem_ctx,
pipe_hnd->desthost,
MAXIMUM_ALLOWED_ACCESS,
- &connect_pol);
+ &connect_pol,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ d_fprintf(stderr, _("Could not connect to SAM: %s\n"),
+ nt_errstr(status));
+ goto done;
+ }
+
if (!NT_STATUS_IS_OK(result)) {
+ status = result;
d_fprintf(stderr, _("Could not connect to SAM: %s\n"),
nt_errstr(result));
goto done;
}
/* Get domain policy handle */
- result = rpccli_samr_OpenDomain(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_OpenDomain(b, mem_ctx,
&connect_pol,
MAXIMUM_ALLOWED_ACCESS,
CONST_DISCARD(struct dom_sid2 *, domain_sid),
- &domain_pol);
+ &domain_pol,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ d_fprintf(stderr, _("Could not open domain: %s\n"),
+ nt_errstr(status));
+ goto done;
+ }
if (!NT_STATUS_IS_OK(result)) {
+ status = result;
d_fprintf(stderr, _("Could not open domain: %s\n"),
nt_errstr(result));
goto done;
}
- result = rpccli_samr_QueryDomainInfo(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_QueryDomainInfo(b, mem_ctx,
&domain_pol,
2,
- &info);
+ &info,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ goto done;
+ }
+ status = result;
if (NT_STATUS_IS_OK(result)) {
d_printf(_("Domain Name: %s\n"),
info->general.domain_name.string);
@@ -550,7 +571,7 @@ NTSTATUS rpc_info_internals(struct net_context *c,
}
done:
- return result;
+ return status;
}
/**
@@ -1110,10 +1131,11 @@ static NTSTATUS rpc_sh_handle_user(struct net_context *c,
int argc, const char **argv))
{
struct policy_handle connect_pol, domain_pol, user_pol;
- NTSTATUS result = NT_STATUS_UNSUCCESSFUL;
+ NTSTATUS status, result;
struct dom_sid sid;
uint32 rid;
enum lsa_SidType type;
+ struct dcerpc_binding_handle *b = pipe_hnd->binding_handle;
if (argc == 0) {
d_fprintf(stderr, "%s %s <username>\n", _("Usage:"),
@@ -1125,66 +1147,81 @@ static NTSTATUS rpc_sh_handle_user(struct net_context *c,
ZERO_STRUCT(domain_pol);
ZERO_STRUCT(user_pol);
- result = net_rpc_lookup_name(c, mem_ctx, rpc_pipe_np_smb_conn(pipe_hnd),
+ status = net_rpc_lookup_name(c, mem_ctx, rpc_pipe_np_smb_conn(pipe_hnd),
argv[0], NULL, NULL, &sid, &type);
- if (!NT_STATUS_IS_OK(result)) {
+ if (!NT_STATUS_IS_OK(status)) {
d_fprintf(stderr, _("Could not lookup %s: %s\n"), argv[0],
- nt_errstr(result));
+ nt_errstr(status));
goto done;
}
if (type != SID_NAME_USER) {
d_fprintf(stderr, _("%s is a %s, not a user\n"), argv[0],
sid_type_lookup(type));
- result = NT_STATUS_NO_SUCH_USER;
+ status = NT_STATUS_NO_SUCH_USER;
goto done;
}
if (!sid_peek_check_rid(ctx->domain_sid, &sid, &rid)) {
d_fprintf(stderr, _("%s is not in our domain\n"), argv[0]);
- result = NT_STATUS_NO_SUCH_USER;
+ status = NT_STATUS_NO_SUCH_USER;
goto done;
}
- result = rpccli_samr_Connect2(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_Connect2(b, mem_ctx,
pipe_hnd->desthost,
MAXIMUM_ALLOWED_ACCESS,
- &connect_pol);
+ &connect_pol,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ goto done;
+ }
if (!NT_STATUS_IS_OK(result)) {
+ status = result;
goto done;
}
- result = rpccli_samr_OpenDomain(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_OpenDomain(b, mem_ctx,
&connect_pol,
MAXIMUM_ALLOWED_ACCESS,
ctx->domain_sid,
- &domain_pol);
+ &domain_pol,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ goto done;
+ }
if (!NT_STATUS_IS_OK(result)) {
+ status = result;
goto done;
}
- result = rpccli_samr_OpenUser(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_OpenUser(b, mem_ctx,
&domain_pol,
MAXIMUM_ALLOWED_ACCESS,
rid,
- &user_pol);
+ &user_pol,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ goto done;
+ }
if (!NT_STATUS_IS_OK(result)) {
+ status = result;
goto done;
}
- result = fn(c, mem_ctx, ctx, pipe_hnd, &user_pol, argc-1, argv+1);
+ status = fn(c, mem_ctx, ctx, pipe_hnd, &user_pol, argc-1, argv+1);
done:
if (is_valid_policy_hnd(&user_pol)) {
- rpccli_samr_Close(pipe_hnd, mem_ctx, &user_pol);
+ dcerpc_samr_Close(b, mem_ctx, &user_pol, &result);
}
if (is_valid_policy_hnd(&domain_pol)) {
- rpccli_samr_Close(pipe_hnd, mem_ctx, &domain_pol);
+ dcerpc_samr_Close(b, mem_ctx, &domain_pol, &result);
}
if (is_valid_policy_hnd(&connect_pol)) {
- rpccli_samr_Close(pipe_hnd, mem_ctx, &connect_pol);
+ dcerpc_samr_Close(b, mem_ctx, &connect_pol, &result);
}
- return result;
+ return status;
}
static NTSTATUS rpc_sh_user_show_internals(struct net_context *c,
@@ -1194,8 +1231,9 @@ static NTSTATUS rpc_sh_user_show_internals(struct net_context *c,
struct policy_handle *user_hnd,
int argc, const char **argv)
{
- NTSTATUS result;
+ NTSTATUS status, result;
union samr_UserInfo *info = NULL;
+ struct dcerpc_binding_handle *b = pipe_hnd->binding_handle;
if (argc != 0) {
d_fprintf(stderr, "%s %s show <username>\n", _("Usage:"),
@@ -1203,10 +1241,14 @@ static NTSTATUS rpc_sh_user_show_internals(struct net_context *c,
return NT_STATUS_INVALID_PARAMETER;
}
- result = rpccli_samr_QueryUserInfo(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_QueryUserInfo(b, mem_ctx,
user_hnd,
21,
- &info);
+ &info,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
if (!NT_STATUS_IS_OK(result)) {
return result;
}
@@ -1246,10 +1288,11 @@ static NTSTATUS rpc_sh_user_str_edit_internals(struct net_context *c,
struct policy_handle *user_hnd,
int argc, const char **argv)
{
- NTSTATUS result;
+ NTSTATUS status, result;
const char *username;
const char *oldval = "";
union samr_UserInfo *info = NULL;
+ struct dcerpc_binding_handle *b = pipe_hnd->binding_handle;
if (argc > 1) {
d_fprintf(stderr, "%s %s <username> [new value|NULL]\n",
@@ -1257,10 +1300,14 @@ static NTSTATUS rpc_sh_user_str_edit_internals(struct net_context *c,
return NT_STATUS_INVALID_PARAMETER;
}
- result = rpccli_samr_QueryUserInfo(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_QueryUserInfo(b, mem_ctx,
user_hnd,
21,
- &info);
+ &info,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
if (!NT_STATUS_IS_OK(result)) {
return result;
}
@@ -1292,17 +1339,23 @@ static NTSTATUS rpc_sh_user_str_edit_internals(struct net_context *c,
SETSTR("profilepath", profile_path, PROFILE_PATH);
SETSTR("description", description, DESCRIPTION);
- result = rpccli_samr_SetUserInfo(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_SetUserInfo(b, mem_ctx,
user_hnd,
21,
- info);
+ info,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ status = result;
d_printf(_("Set %s's %s from [%s] to [%s]\n"), username,
ctx->thiscmd, oldval, argv[0]);
done:
- return result;
+ return status;
}
#define HANDLEFLG(name, rec) \
@@ -1331,12 +1384,13 @@ static NTSTATUS rpc_sh_user_flag_edit_internals(struct net_context *c,
struct policy_handle *user_hnd,
int argc, const char **argv)
{
- NTSTATUS result;
+ NTSTATUS status, result;
const char *username;
const char *oldval = "unknown";
uint32 oldflags, newflags;
bool newval;
union samr_UserInfo *info = NULL;
+ struct dcerpc_binding_handle *b = pipe_hnd->binding_handle;
if ((argc > 1) ||
((argc == 1) && !strequal(argv[0], "yes") &&
@@ -1350,10 +1404,14 @@ static NTSTATUS rpc_sh_user_flag_edit_internals(struct net_context *c,
newval = strequal(argv[0], "yes");
- result = rpccli_samr_QueryUserInfo(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_QueryUserInfo(b, mem_ctx,
user_hnd,
21,
- &info);
+ &info,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
if (!NT_STATUS_IS_OK(result)) {
return result;
}
@@ -1378,11 +1436,15 @@ static NTSTATUS rpc_sh_user_flag_edit_internals(struct net_context *c,
info->info21.acct_flags = newflags;
info->info21.fields_present = SAMR_FIELD_ACCT_FLAGS;
- result = rpccli_samr_SetUserInfo(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_SetUserInfo(b, mem_ctx,
user_hnd,
21,
- info);
-
+ info,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ goto done;
+ }
+ status = result;
if (NT_STATUS_IS_OK(result)) {
d_printf(_("Set %s's %s flag from [%s] to [%s]\n"), username,
ctx->thiscmd, oldval, argv[0]);
@@ -1390,7 +1452,7 @@ static NTSTATUS rpc_sh_user_flag_edit_internals(struct net_context *c,
done:
- return result;
+ return status;
}
static NTSTATUS rpc_sh_user_flag_edit(struct net_context *c,
@@ -1510,12 +1572,13 @@ static NTSTATUS rpc_group_delete_internals(struct net_context *c,
{
struct policy_handle connect_pol, domain_pol, group_pol, user_pol;
bool group_is_primary = false;
- NTSTATUS result = NT_STATUS_UNSUCCESSFUL;
+ NTSTATUS status, result;
uint32_t group_rid;
struct samr_RidAttrArray *rids = NULL;
/* char **names; */
int i;
/* struct samr_RidWithAttribute *user_gids; */
+ struct dcerpc_binding_handle *b = pipe_hnd->binding_handle;
struct samr_Ids group_rids, name_types;
struct lsa_String lsa_acct_name;
@@ -1526,64 +1589,98 @@ static NTSTATUS rpc_group_delete_internals(struct net_context *c,
return NT_STATUS_OK; /* ok? */
}
- result = rpccli_samr_Connect2(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_Connect2(b, mem_ctx,
pipe_hnd->desthost,
MAXIMUM_ALLOWED_ACCESS,
- &connect_pol);
+ &connect_pol,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ d_fprintf(stderr, _("Request samr_Connect2 failed\n"));
+ goto done;
+ }
if (!NT_STATUS_IS_OK(result)) {
+ status = result;
d_fprintf(stderr, _("Request samr_Connect2 failed\n"));
- goto done;
+ goto done;
}
- result = rpccli_samr_OpenDomain(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_OpenDomain(b, mem_ctx,
&connect_pol,
MAXIMUM_ALLOWED_ACCESS,
CONST_DISCARD(struct dom_sid2 *, domain_sid),
- &domain_pol);
+ &domain_pol,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ d_fprintf(stderr, _("Request open_domain failed\n"));
+ goto done;
+ }
if (!NT_STATUS_IS_OK(result)) {
+ status = result;
d_fprintf(stderr, _("Request open_domain failed\n"));
- goto done;
+ goto done;
}
init_lsa_String(&lsa_acct_name, argv[0]);
- result = rpccli_samr_LookupNames(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_LookupNames(b, mem_ctx,
&domain_pol,
1,
&lsa_acct_name,
&group_rids,
- &name_types);
+ &name_types,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ d_fprintf(stderr, _("Lookup of '%s' failed\n"),argv[0]);
+ goto done;
+ }
+
if (!NT_STATUS_IS_OK(result)) {
+ status = result;
d_fprintf(stderr, _("Lookup of '%s' failed\n"),argv[0]);
- goto done;
+ goto done;
}
switch (name_types.ids[0])
{
case SID_NAME_DOM_GRP:
- result = rpccli_samr_OpenGroup(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_OpenGroup(b, mem_ctx,
&domain_pol,
MAXIMUM_ALLOWED_ACCESS,
group_rids.ids[0],
- &group_pol);
+ &group_pol,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ d_fprintf(stderr, _("Request open_group failed"));
+ goto done;
+ }
+
if (!NT_STATUS_IS_OK(result)) {
+ status = result;
d_fprintf(stderr, _("Request open_group failed"));
- goto done;
+ goto done;
}
group_rid = group_rids.ids[0];
- result = rpccli_samr_QueryGroupMember(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_QueryGroupMember(b, mem_ctx,
&group_pol,
- &rids);
+ &rids,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ d_fprintf(stderr,
+ _("Unable to query group members of %s"),
+ argv[0]);
+ goto done;
+ }
if (!NT_STATUS_IS_OK(result)) {
+ status = result;
d_fprintf(stderr,
_("Unable to query group members of %s"),
argv[0]);
- goto done;
+ goto done;
}
if (c->opt_verbose) {
@@ -1595,31 +1692,48 @@ static NTSTATUS rpc_group_delete_internals(struct net_context *c,
/* Check if group is anyone's primary group */
for (i = 0; i < rids->count; i++)
{
- result = rpccli_samr_OpenUser(pipe_hnd, mem_ctx,
+ status = dcerpc_samr_OpenUser(b, mem_ctx,
&domain_pol,
MAXIMUM_ALLOWED_ACCESS,
rids->rids[i],
- &user_pol);
+ &user_pol,
+ &result);
+ if (!NT_STATUS_IS_OK(status)) {
+ d_fprintf(stderr,
+ _("Unable to open group member %d\n"),
+ rids->rids[i]);
+ goto done;
+ }
- if (!NT_STATUS_IS_OK(result)) {
+ if (!NT_STATUS_IS_OK(result)) {
+ status = result;
d_fprintf(stderr,
_("Unable to open group member %d\n"),
rids->rids[i]);
--
Samba Shared Repository
More information about the samba-cvs
mailing list