summaryrefslogtreecommitdiff
path: root/source4/rpc_server/epmapper
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2004-01-09 02:43:23 +0000
committerAndrew Tridgell <tridge@samba.org>2004-01-09 02:43:23 +0000
commit8fb8c40d3be78eb8f05a095700a84a7a745135cb (patch)
treea5f1a2b4c2867b904b88da9dab11fb6dd7722f7e /source4/rpc_server/epmapper
parent7e6cf43756b7643e2f0ee7ada5076f36f3a24bb7 (diff)
downloadsamba-8fb8c40d3be78eb8f05a095700a84a7a745135cb.tar.gz
samba-8fb8c40d3be78eb8f05a095700a84a7a745135cb.tar.bz2
samba-8fb8c40d3be78eb8f05a095700a84a7a745135cb.zip
fixed the rpc epmapper server. This fixes rpc over tcp.
(This used to be commit 6ac547fa5fe4b1926bafc46e500b51486c7d500d)
Diffstat (limited to 'source4/rpc_server/epmapper')
-rw-r--r--source4/rpc_server/epmapper/rpc_epmapper.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/source4/rpc_server/epmapper/rpc_epmapper.c b/source4/rpc_server/epmapper/rpc_epmapper.c
index f3285729a6..7bfeaf2fee 100644
--- a/source4/rpc_server/epmapper/rpc_epmapper.c
+++ b/source4/rpc_server/epmapper/rpc_epmapper.c
@@ -116,11 +116,28 @@ static uint32 build_ep_list(TALLOC_CTX *mem_ctx,
struct dcesrv_endpoint *endpoint_list,
struct dcesrv_ep_iface **eps)
{
+ struct dcesrv_endpoint *d;
uint32 total = 0;
(*eps) = NULL;
- /* TODO */
+ for (d=endpoint_list; d; d=d->next) {
+ struct dcesrv_if_list *iface;
+
+ for (iface=d->interface_list;iface;iface=iface->next) {
+ (*eps) = talloc_realloc_p(mem_ctx, *eps,
+ struct dcesrv_ep_iface,
+ total + 1);
+ if (!*eps) {
+ return 0;
+ }
+ (*eps)[total].name = iface->iface.ndr->name;
+ (*eps)[total].uuid = iface->iface.ndr->uuid;
+ (*eps)[total].if_version = iface->iface.ndr->if_version;
+ (*eps)[total].ep_description = d->ep_description;
+ total++;
+ }
+ }
return total;
}