summaryrefslogtreecommitdiff
path: root/source3/rpc_server
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2009-11-08 19:37:42 +0100
committerVolker Lendecke <vl@samba.org>2009-11-08 19:43:46 +0100
commit47455b4d1adf2e01f0994005a6302ae32c012478 (patch)
treef3317aca52f1ca5c3cc9f7ed4a429250295941d4 /source3/rpc_server
parent82c35e460e00d6f9e61df2d20ea9d0ccf765636a (diff)
downloadsamba-47455b4d1adf2e01f0994005a6302ae32c012478.tar.gz
samba-47455b4d1adf2e01f0994005a6302ae32c012478.tar.bz2
samba-47455b4d1adf2e01f0994005a6302ae32c012478.zip
Revert "s3: Do not reference the ndr_tables in the server calls directly"
This reverts commit 98fb71782e05ae72cd6abeb38b6e0b96a50c1761.
Diffstat (limited to 'source3/rpc_server')
-rw-r--r--source3/rpc_server/srv_lsa_hnd.c5
-rw-r--r--source3/rpc_server/srv_pipe_hnd.c13
2 files changed, 5 insertions, 13 deletions
diff --git a/source3/rpc_server/srv_lsa_hnd.c b/source3/rpc_server/srv_lsa_hnd.c
index 8b4b4a9252..4233b6f0e6 100644
--- a/source3/rpc_server/srv_lsa_hnd.c
+++ b/source3/rpc_server/srv_lsa_hnd.c
@@ -81,11 +81,10 @@ bool init_pipe_handle_list(pipes_struct *p, const struct ndr_syntax_id *syntax)
for (plist = get_first_internal_pipe();
plist;
plist = get_next_internal_pipe(plist)) {
- if (ndr_syntax_id_equal(syntax,
- &plist->interface->syntax_id)) {
+ if (ndr_syntax_id_equal(syntax, &plist->syntax)) {
break;
}
- if (is_samr_lsa_pipe(&plist->interface->syntax_id)
+ if (is_samr_lsa_pipe(&plist->syntax)
&& is_samr_lsa_pipe(syntax)) {
/*
* samr and lsa share a handle space (same process
diff --git a/source3/rpc_server/srv_pipe_hnd.c b/source3/rpc_server/srv_pipe_hnd.c
index 8bc2bdd505..e7d94d70ec 100644
--- a/source3/rpc_server/srv_pipe_hnd.c
+++ b/source3/rpc_server/srv_pipe_hnd.c
@@ -57,8 +57,7 @@ pipes_struct *get_next_internal_pipe(pipes_struct *p)
const char *get_pipe_name_tos(struct pipes_struct *p)
{
- return get_pipe_name_from_syntax(talloc_tos(),
- &p->interface->syntax_id);
+ return get_pipe_name_from_syntax(talloc_tos(), &p->syntax);
}
/****************************************************************************
@@ -120,14 +119,6 @@ static struct pipes_struct *make_internal_rpc_pipe_p(TALLOC_CTX *mem_ctx,
return NULL;
}
- p->interface = get_iface_from_syntax(syntax);
- if (p->interface == NULL) {
- DEBUG(10, ("Could not find ndr table for syntax\n"));
- TALLOC_FREE(p->mem_ctx);
- TALLOC_FREE(p);
- return NULL;
- }
-
if (!init_pipe_handle_list(p, syntax)) {
DEBUG(0,("open_rpc_pipe_p: init_pipe_handles failed.\n"));
talloc_destroy(p->mem_ctx);
@@ -170,6 +161,8 @@ static struct pipes_struct *make_internal_rpc_pipe_p(TALLOC_CTX *mem_ctx,
*/
prs_init_empty(&p->out_data.rdata, p->mem_ctx, MARSHALL);
+ p->syntax = *syntax;
+
DEBUG(4,("Created internal pipe %s (pipes_open=%d)\n",
get_pipe_name_from_syntax(talloc_tos(), syntax), pipes_open));