[SCM] Samba Shared Repository - branch v3-2-test updated -
initial-v3-2-test-2079-g5550c5c
Günther Deschner
gd at samba.org
Mon Feb 11 19:53:42 GMT 2008
The branch, v3-2-test has been updated
via 5550c5c387ad66ffe8532e669b6155a28c6e54d1 (commit)
via b24cf05dcad5696a7b948c93de9e995c2b53e80f (commit)
via 66aac1d7f2a340d30dbbcff9b1589a2e24bacdaa (commit)
via 4d9f48f918ac5a0e7df0f4e55673c5b285efc4d5 (commit)
from 14f5a7dd57054f46a607d063ab03c4505de0f05c (commit)
http://gitweb.samba.org/?samba.git;a=shortlog;h=v3-2-test
- Log -----------------------------------------------------------------
commit 5550c5c387ad66ffe8532e669b6155a28c6e54d1
Author: Günther Deschner <gd at samba.org>
Date: Mon Feb 11 20:31:34 2008 +0100
Remove unused marshalling for LSA_UNK_GET_CONNUSER.
Guenther
commit b24cf05dcad5696a7b948c93de9e995c2b53e80f
Author: Günther Deschner <gd at samba.org>
Date: Mon Feb 11 20:29:31 2008 +0100
Use pidl for _lsa_GetUserName().
Guenther
commit 66aac1d7f2a340d30dbbcff9b1589a2e24bacdaa
Author: Günther Deschner <gd at samba.org>
Date: Mon Feb 11 20:22:01 2008 +0100
Add cmd_lsa_get_username command to rpcclient.
Guenther
commit 4d9f48f918ac5a0e7df0f4e55673c5b285efc4d5
Author: Günther Deschner <gd at samba.org>
Date: Mon Feb 11 20:49:24 2008 +0100
Re-run make idl.
Guenther
-----------------------------------------------------------------------
Summary of changes:
source/include/rpc_lsa.h | 28 ------
source/librpc/gen_ndr/cli_lsa.c | 8 +-
source/librpc/gen_ndr/cli_lsa.h | 4 +-
source/librpc/gen_ndr/lsa.h | 12 +--
source/librpc/gen_ndr/ndr_lsa.c | 177 +++++++++++++++++++++------------------
source/librpc/gen_ndr/ndr_lsa.h | 1 -
source/rpc_parse/parse_lsa.c | 73 ----------------
source/rpc_server/srv_lsa.c | 24 +-----
source/rpc_server/srv_lsa_nt.c | 48 ++++++-----
source/rpcclient/cmd_lsarpc.c | 41 +++++++++
10 files changed, 175 insertions(+), 241 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source/include/rpc_lsa.h b/source/include/rpc_lsa.h
index 9f8beae..fe088c4 100644
--- a/source/include/rpc_lsa.h
+++ b/source/include/rpc_lsa.h
@@ -551,34 +551,6 @@ typedef struct lsa_r_enum_accounts
NTSTATUS status;
} LSA_R_ENUM_ACCOUNTS;
-/* LSA_Q_UNK_GET_CONNUSER - gets username\domain of connected user
- called when "Take Ownership" is clicked -SK */
-typedef struct lsa_q_unk_get_connuser
-{
- uint32 ptr_srvname;
- UNISTR2 uni2_srvname;
- uint32 unk1; /* 3 unknown uint32's are seen right after uni2_srvname */
- uint32 unk2; /* unk2 appears to be a ptr, unk1 = unk3 = 0 usually */
- uint32 unk3;
-} LSA_Q_UNK_GET_CONNUSER;
-
-/* LSA_R_UNK_GET_CONNUSER */
-typedef struct lsa_r_unk_get_connuser
-{
- uint32 ptr_user_name;
- UNIHDR hdr_user_name;
- UNISTR2 uni2_user_name;
-
- uint32 unk1;
-
- uint32 ptr_dom_name;
- UNIHDR hdr_dom_name;
- UNISTR2 uni2_dom_name;
-
- NTSTATUS status;
-} LSA_R_UNK_GET_CONNUSER;
-
-
typedef struct lsa_q_enumprivsaccount
{
POLICY_HND pol; /* policy handle */
diff --git a/source/librpc/gen_ndr/cli_lsa.c b/source/librpc/gen_ndr/cli_lsa.c
index d2c54ef..f910a82 100644
--- a/source/librpc/gen_ndr/cli_lsa.c
+++ b/source/librpc/gen_ndr/cli_lsa.c
@@ -1957,8 +1957,8 @@ NTSTATUS rpccli_lsa_OpenPolicy2(struct rpc_pipe_client *cli,
NTSTATUS rpccli_lsa_GetUserName(struct rpc_pipe_client *cli,
TALLOC_CTX *mem_ctx,
const char *system_name,
- struct lsa_String *account_name,
- struct lsa_StringPointer *authority_name)
+ struct lsa_String **account_name,
+ struct lsa_String **authority_name)
{
struct lsa_GetUserName r;
NTSTATUS status;
@@ -1992,9 +1992,7 @@ NTSTATUS rpccli_lsa_GetUserName(struct rpc_pipe_client *cli,
}
/* Return variables */
- if (account_name && r.out.account_name) {
- *account_name = *r.out.account_name;
- }
+ *account_name = *r.out.account_name;
if (authority_name && r.out.authority_name) {
*authority_name = *r.out.authority_name;
}
diff --git a/source/librpc/gen_ndr/cli_lsa.h b/source/librpc/gen_ndr/cli_lsa.h
index 5e40a17..49f4633 100644
--- a/source/librpc/gen_ndr/cli_lsa.h
+++ b/source/librpc/gen_ndr/cli_lsa.h
@@ -219,8 +219,8 @@ NTSTATUS rpccli_lsa_OpenPolicy2(struct rpc_pipe_client *cli,
NTSTATUS rpccli_lsa_GetUserName(struct rpc_pipe_client *cli,
TALLOC_CTX *mem_ctx,
const char *system_name,
- struct lsa_String *account_name,
- struct lsa_StringPointer *authority_name);
+ struct lsa_String **account_name,
+ struct lsa_String **authority_name);
NTSTATUS rpccli_lsa_QueryInfoPolicy2(struct rpc_pipe_client *cli,
TALLOC_CTX *mem_ctx,
struct policy_handle *handle,
diff --git a/source/librpc/gen_ndr/lsa.h b/source/librpc/gen_ndr/lsa.h
index d829c1f..14d46a6 100644
--- a/source/librpc/gen_ndr/lsa.h
+++ b/source/librpc/gen_ndr/lsa.h
@@ -452,10 +452,6 @@ struct lsa_RightSet {
struct lsa_StringLarge *names;/* [unique,size_is(count)] */
};
-struct lsa_StringPointer {
- struct lsa_String *string;/* [unique] */
-};
-
struct lsa_DomainListEx {
uint32_t count;
struct lsa_TrustDomainInfoInfoEx *domains;/* [unique,size_is(count)] */
@@ -1189,13 +1185,13 @@ struct lsa_OpenPolicy2 {
struct lsa_GetUserName {
struct {
const char *system_name;/* [unique,charset(UTF16)] */
- struct lsa_String *account_name;/* [unique] */
- struct lsa_StringPointer *authority_name;/* [unique] */
+ struct lsa_String **account_name;/* [ref] */
+ struct lsa_String **authority_name;/* [unique] */
} in;
struct {
- struct lsa_String *account_name;/* [unique] */
- struct lsa_StringPointer *authority_name;/* [unique] */
+ struct lsa_String **account_name;/* [ref] */
+ struct lsa_String **authority_name;/* [unique] */
NTSTATUS result;
} out;
diff --git a/source/librpc/gen_ndr/ndr_lsa.c b/source/librpc/gen_ndr/ndr_lsa.c
index 69feaed..84f9974 100644
--- a/source/librpc/gen_ndr/ndr_lsa.c
+++ b/source/librpc/gen_ndr/ndr_lsa.c
@@ -3344,57 +3344,6 @@ _PUBLIC_ void ndr_print_lsa_RightSet(struct ndr_print *ndr, const char *name, co
ndr->depth--;
}
-static enum ndr_err_code ndr_push_lsa_StringPointer(struct ndr_push *ndr, int ndr_flags, const struct lsa_StringPointer *r)
-{
- if (ndr_flags & NDR_SCALARS) {
- NDR_CHECK(ndr_push_align(ndr, 4));
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->string));
- }
- if (ndr_flags & NDR_BUFFERS) {
- if (r->string) {
- NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->string));
- }
- }
- return NDR_ERR_SUCCESS;
-}
-
-static enum ndr_err_code ndr_pull_lsa_StringPointer(struct ndr_pull *ndr, int ndr_flags, struct lsa_StringPointer *r)
-{
- uint32_t _ptr_string;
- TALLOC_CTX *_mem_save_string_0;
- if (ndr_flags & NDR_SCALARS) {
- NDR_CHECK(ndr_pull_align(ndr, 4));
- NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_string));
- if (_ptr_string) {
- NDR_PULL_ALLOC(ndr, r->string);
- } else {
- r->string = NULL;
- }
- }
- if (ndr_flags & NDR_BUFFERS) {
- if (r->string) {
- _mem_save_string_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
- NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->string));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
- }
- }
- return NDR_ERR_SUCCESS;
-}
-
-_PUBLIC_ void ndr_print_lsa_StringPointer(struct ndr_print *ndr, const char *name, const struct lsa_StringPointer *r)
-{
- ndr_print_struct(ndr, name, "lsa_StringPointer");
- ndr->depth++;
- ndr_print_ptr(ndr, "string", r->string);
- ndr->depth++;
- if (r->string) {
- ndr_print_lsa_String(ndr, "string", r->string);
- }
- ndr->depth--;
- ndr->depth--;
-}
-
static enum ndr_err_code ndr_push_lsa_DomainListEx(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainListEx *r)
{
uint32_t cntr_domains_1;
@@ -8587,23 +8536,35 @@ static enum ndr_err_code ndr_push_lsa_GetUserName(struct ndr_push *ndr, int flag
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.system_name, ndr_charset_length(r->in.system_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
}
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.account_name));
- if (r->in.account_name) {
- NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
+ if (r->in.account_name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, *r->in.account_name));
+ if (*r->in.account_name) {
+ NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.account_name));
}
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.authority_name));
if (r->in.authority_name) {
- NDR_CHECK(ndr_push_lsa_StringPointer(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.authority_name));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, *r->in.authority_name));
+ if (*r->in.authority_name) {
+ NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.authority_name));
+ }
}
}
if (flags & NDR_OUT) {
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.account_name));
- if (r->out.account_name) {
- NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.account_name));
+ if (r->out.account_name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.account_name));
+ if (*r->out.account_name) {
+ NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.account_name));
}
NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.authority_name));
if (r->out.authority_name) {
- NDR_CHECK(ndr_push_lsa_StringPointer(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.authority_name));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.authority_name));
+ if (*r->out.authority_name) {
+ NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.authority_name));
+ }
}
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
}
@@ -8617,7 +8578,9 @@ static enum ndr_err_code ndr_pull_lsa_GetUserName(struct ndr_pull *ndr, int flag
uint32_t _ptr_authority_name;
TALLOC_CTX *_mem_save_system_name_0;
TALLOC_CTX *_mem_save_account_name_0;
+ TALLOC_CTX *_mem_save_account_name_1;
TALLOC_CTX *_mem_save_authority_name_0;
+ TALLOC_CTX *_mem_save_authority_name_1;
if (flags & NDR_IN) {
ZERO_STRUCT(r->out);
@@ -8639,18 +8602,24 @@ static enum ndr_err_code ndr_pull_lsa_GetUserName(struct ndr_pull *ndr, int flag
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t), CH_UTF16));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
}
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->in.account_name);
+ }
+ _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.account_name, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_name));
if (_ptr_account_name) {
- NDR_PULL_ALLOC(ndr, r->in.account_name);
+ NDR_PULL_ALLOC(ndr, *r->in.account_name);
} else {
- r->in.account_name = NULL;
+ *r->in.account_name = NULL;
}
- if (r->in.account_name) {
- _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->in.account_name, 0);
- NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, 0);
+ if (*r->in.account_name) {
+ _mem_save_account_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, *r->in.account_name, 0);
+ NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.account_name));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_1, 0);
}
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
if (_ptr_authority_name) {
NDR_PULL_ALLOC(ndr, r->in.authority_name);
@@ -8660,23 +8629,42 @@ static enum ndr_err_code ndr_pull_lsa_GetUserName(struct ndr_pull *ndr, int flag
if (r->in.authority_name) {
_mem_save_authority_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->in.authority_name, 0);
- NDR_CHECK(ndr_pull_lsa_StringPointer(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.authority_name));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
+ if (_ptr_authority_name) {
+ NDR_PULL_ALLOC(ndr, *r->in.authority_name);
+ } else {
+ *r->in.authority_name = NULL;
+ }
+ if (*r->in.authority_name) {
+ _mem_save_authority_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, *r->in.authority_name, 0);
+ NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.authority_name));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_1, 0);
+ }
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_0, 0);
}
+ NDR_PULL_ALLOC(ndr, r->out.account_name);
+ *r->out.account_name = *r->in.account_name;
}
if (flags & NDR_OUT) {
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.account_name);
+ }
+ _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.account_name, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_name));
if (_ptr_account_name) {
- NDR_PULL_ALLOC(ndr, r->out.account_name);
+ NDR_PULL_ALLOC(ndr, *r->out.account_name);
} else {
- r->out.account_name = NULL;
+ *r->out.account_name = NULL;
}
- if (r->out.account_name) {
- _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->out.account_name, 0);
- NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.account_name));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, 0);
+ if (*r->out.account_name) {
+ _mem_save_account_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, *r->out.account_name, 0);
+ NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.account_name));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_1, 0);
}
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
if (_ptr_authority_name) {
NDR_PULL_ALLOC(ndr, r->out.authority_name);
@@ -8686,7 +8674,18 @@ static enum ndr_err_code ndr_pull_lsa_GetUserName(struct ndr_pull *ndr, int flag
if (r->out.authority_name) {
_mem_save_authority_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->out.authority_name, 0);
- NDR_CHECK(ndr_pull_lsa_StringPointer(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.authority_name));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
+ if (_ptr_authority_name) {
+ NDR_PULL_ALLOC(ndr, *r->out.authority_name);
+ } else {
+ *r->out.authority_name = NULL;
+ }
+ if (*r->out.authority_name) {
+ _mem_save_authority_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, *r->out.authority_name, 0);
+ NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.authority_name));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_1, 0);
+ }
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_0, 0);
}
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
@@ -8712,14 +8711,22 @@ _PUBLIC_ void ndr_print_lsa_GetUserName(struct ndr_print *ndr, const char *name,
ndr->depth--;
ndr_print_ptr(ndr, "account_name", r->in.account_name);
ndr->depth++;
- if (r->in.account_name) {
- ndr_print_lsa_String(ndr, "account_name", r->in.account_name);
+ ndr_print_ptr(ndr, "account_name", *r->in.account_name);
+ ndr->depth++;
+ if (*r->in.account_name) {
+ ndr_print_lsa_String(ndr, "account_name", *r->in.account_name);
}
ndr->depth--;
+ ndr->depth--;
ndr_print_ptr(ndr, "authority_name", r->in.authority_name);
ndr->depth++;
if (r->in.authority_name) {
- ndr_print_lsa_StringPointer(ndr, "authority_name", r->in.authority_name);
+ ndr_print_ptr(ndr, "authority_name", *r->in.authority_name);
+ ndr->depth++;
+ if (*r->in.authority_name) {
+ ndr_print_lsa_String(ndr, "authority_name", *r->in.authority_name);
+ }
+ ndr->depth--;
}
ndr->depth--;
ndr->depth--;
@@ -8729,14 +8736,22 @@ _PUBLIC_ void ndr_print_lsa_GetUserName(struct ndr_print *ndr, const char *name,
ndr->depth++;
ndr_print_ptr(ndr, "account_name", r->out.account_name);
ndr->depth++;
- if (r->out.account_name) {
- ndr_print_lsa_String(ndr, "account_name", r->out.account_name);
+ ndr_print_ptr(ndr, "account_name", *r->out.account_name);
+ ndr->depth++;
+ if (*r->out.account_name) {
+ ndr_print_lsa_String(ndr, "account_name", *r->out.account_name);
}
ndr->depth--;
+ ndr->depth--;
ndr_print_ptr(ndr, "authority_name", r->out.authority_name);
ndr->depth++;
if (r->out.authority_name) {
- ndr_print_lsa_StringPointer(ndr, "authority_name", r->out.authority_name);
+ ndr_print_ptr(ndr, "authority_name", *r->out.authority_name);
+ ndr->depth++;
+ if (*r->out.authority_name) {
+ ndr_print_lsa_String(ndr, "authority_name", *r->out.authority_name);
+ }
+ ndr->depth--;
}
ndr->depth--;
ndr_print_NTSTATUS(ndr, "result", r->out.result);
diff --git a/source/librpc/gen_ndr/ndr_lsa.h b/source/librpc/gen_ndr/ndr_lsa.h
index ab4043f..76add45 100644
--- a/source/librpc/gen_ndr/ndr_lsa.h
+++ b/source/librpc/gen_ndr/ndr_lsa.h
@@ -237,7 +237,6 @@ void ndr_print_lsa_TrustDomainInfoInfoAll(struct ndr_print *ndr, const char *nam
void ndr_print_lsa_TrustedDomainInfo(struct ndr_print *ndr, const char *name, const union lsa_TrustedDomainInfo *r);
void ndr_print_lsa_DATA_BUF_PTR(struct ndr_print *ndr, const char *name, const struct lsa_DATA_BUF_PTR *r);
void ndr_print_lsa_RightSet(struct ndr_print *ndr, const char *name, const struct lsa_RightSet *r);
-void ndr_print_lsa_StringPointer(struct ndr_print *ndr, const char *name, const struct lsa_StringPointer *r);
void ndr_print_lsa_DomainListEx(struct ndr_print *ndr, const char *name, const struct lsa_DomainListEx *r);
void ndr_print_lsa_DomainInfoKerberos(struct ndr_print *ndr, const char *name, const struct lsa_DomainInfoKerberos *r);
void ndr_print_lsa_DomainInfoEfs(struct ndr_print *ndr, const char *name, const struct lsa_DomainInfoEfs *r);
diff --git a/source/rpc_parse/parse_lsa.c b/source/rpc_parse/parse_lsa.c
index ded4b7a..12dd6e1 100644
--- a/source/rpc_parse/parse_lsa.c
+++ b/source/rpc_parse/parse_lsa.c
@@ -1496,79 +1496,6 @@ bool lsa_io_r_enum_accounts(const char *desc, LSA_R_ENUM_ACCOUNTS *out, prs_stru
}
-/*******************************************************************
- Reads or writes an LSA_Q_UNK_GET_CONNUSER structure.
-********************************************************************/
-
-bool lsa_io_q_unk_get_connuser(const char *desc, LSA_Q_UNK_GET_CONNUSER *in, prs_struct *ps, int depth)
-{
- prs_debug(ps, depth, desc, "lsa_io_q_unk_get_connuser");
- depth++;
-
- if(!prs_align(ps))
- return False;
-
- if(!prs_uint32("ptr_srvname", ps, depth, &in->ptr_srvname))
- return False;
-
- if(!smb_io_unistr2("uni2_srvname", &in->uni2_srvname, in->ptr_srvname, ps, depth)) /* server name to be looked up */
- return False;
-
- if (!prs_align(ps))
- return False;
-
- if(!prs_uint32("unk1", ps, depth, &in->unk1))
- return False;
- if(!prs_uint32("unk2", ps, depth, &in->unk2))
- return False;
- if(!prs_uint32("unk3", ps, depth, &in->unk3))
- return False;
-
- /* Don't bother to read or write at present... */
- return True;
-}
-
-/*******************************************************************
- Reads or writes an LSA_R_UNK_GET_CONNUSER structure.
-********************************************************************/
-
-bool lsa_io_r_unk_get_connuser(const char *desc, LSA_R_UNK_GET_CONNUSER *out, prs_struct *ps, int depth)
-{
- prs_debug(ps, depth, desc, "lsa_io_r_unk_get_connuser");
- depth++;
-
- if(!prs_align(ps))
- return False;
-
- if(!prs_uint32("ptr_user_name", ps, depth, &out->ptr_user_name))
- return False;
- if(!smb_io_unihdr("hdr_user_name", &out->hdr_user_name, ps, depth))
- return False;
- if(!smb_io_unistr2("uni2_user_name", &out->uni2_user_name, out->ptr_user_name, ps, depth))
- return False;
-
- if (!prs_align(ps))
- return False;
-
- if(!prs_uint32("unk1", ps, depth, &out->unk1))
- return False;
-
- if(!prs_uint32("ptr_dom_name", ps, depth, &out->ptr_dom_name))
- return False;
- if(!smb_io_unihdr("hdr_dom_name", &out->hdr_dom_name, ps, depth))
- return False;
- if(!smb_io_unistr2("uni2_dom_name", &out->uni2_dom_name, out->ptr_dom_name, ps, depth))
- return False;
-
- if (!prs_align(ps))
- return False;
-
- if(!prs_ntstatus("status", ps, depth, &out->status))
- return False;
-
- return True;
-}
-
void init_lsa_q_enum_privsaccount(LSA_Q_ENUMPRIVSACCOUNT *trn, POLICY_HND *hnd)
{
memcpy(&trn->pol, hnd, sizeof(trn->pol));
diff --git a/source/rpc_server/srv_lsa.c b/source/rpc_server/srv_lsa.c
index 9f3dd90..9865a70 100644
--- a/source/rpc_server/srv_lsa.c
+++ b/source/rpc_server/srv_lsa.c
@@ -234,29 +234,7 @@ static bool api_lsa_enum_accounts(pipes_struct *p)
static bool api_lsa_unk_get_connuser(pipes_struct *p)
{
- LSA_Q_UNK_GET_CONNUSER q_u;
- LSA_R_UNK_GET_CONNUSER r_u;
-
- prs_struct *data = &p->in_data.data;
- prs_struct *rdata = &p->out_data.rdata;
-
- ZERO_STRUCT(q_u);
- ZERO_STRUCT(r_u);
-
- if(!lsa_io_q_unk_get_connuser("", &q_u, data, 0)) {
- DEBUG(0,("api_lsa_unk_get_connuser: failed to unmarshall LSA_Q_UNK_GET_CONNUSER.\n"));
- return False;
--
Samba Shared Repository
More information about the samba-cvs
mailing list