From 32bcc73cf8b59e2254967d55ebeb2715d4287840 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Mon, 26 Apr 2010 13:27:51 +0200 Subject: [PATCH] s4:rpc_server/srvsvc: pass tsocket_address to the ntvfs layer metze --- source4/rpc_server/srvsvc/srvsvc_ntvfs.c | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/source4/rpc_server/srvsvc/srvsvc_ntvfs.c b/source4/rpc_server/srvsvc/srvsvc_ntvfs.c index d95c307d165..da1a65047c8 100644 --- a/source4/rpc_server/srvsvc/srvsvc_ntvfs.c +++ b/source4/rpc_server/srvsvc/srvsvc_ntvfs.c @@ -23,18 +23,6 @@ #include "rpc_server/dcerpc_server.h" #include "param/param.h" -struct socket_address *srvsvc_get_my_addr(void *p, TALLOC_CTX *mem_ctx) -{ - struct dcesrv_connection *conn = talloc_get_type(p, struct dcesrv_connection); - return dcesrv_connection_get_my_addr(conn, mem_ctx); -} - -struct socket_address *srvsvc_get_peer_addr(void *p, TALLOC_CTX *mem_ctx) -{ - struct dcesrv_connection *conn = talloc_get_type(p, struct dcesrv_connection); - return dcesrv_connection_get_peer_addr(conn, mem_ctx); -} - struct srvsvc_ntvfs_ctx { struct ntvfs_context *ntvfs; }; @@ -58,6 +46,8 @@ NTSTATUS srvsvc_create_ntvfs_context(struct dcesrv_call_state *dce_call, struct share_config *scfg; const char *sharetype; union smb_tcon tcon; + const struct tsocket_address *local_address; + const struct tsocket_address *remote_address; status = share_get_context_by_name(mem_ctx, lp_share_backend(dce_call->conn->dce_ctx->lp_ctx), dce_call->event_ctx, dce_call->conn->dce_ctx->lp_ctx, &sctx); if (!NT_STATUS_IS_OK(status)) { @@ -111,7 +101,9 @@ NTSTATUS srvsvc_create_ntvfs_context(struct dcesrv_call_state *dce_call, /* * NOTE: we only set the addr callbacks as we're not interesseted in oplocks or in getting file handles */ - status = ntvfs_set_addr_callbacks(c->ntvfs, srvsvc_get_my_addr, srvsvc_get_peer_addr, dce_call->conn); + local_address = dcesrv_connection_get_local_address(dce_call->conn); + remote_address = dcesrv_connection_get_remote_address(dce_call->conn); + status = ntvfs_set_addresses(c->ntvfs, local_address, remote_address); if (!NT_STATUS_IS_OK(status)) { DEBUG(0,("srvsvc_create_ntvfs_context: NTVFS failed to set the addr callbacks!\n")); return status; -- 2.11.4.GIT